Этот код заполнит вашу потребность:
FileWriter fw = new FileWriter («C: \\ file.json», true); fw.write ( "SSSSSS"); fw.close ();
Для клика ImageView вам нужно создать пользовательский адаптер для вашего списка.
И в методе adfater getView()
просто напишите imageView's onClick()
, и начните свою новую деятельность с onClick () этого изображения.
Для пользовательского списка просто посмотрите на этот учебник Серия Android: пользовательские элементы и адаптеры ListView ..
В вашем пользовательском адаптере getView()
метод, когда вы инициализируете ImageView
. Добавить позицию в качестве метки для просмотра изображения. Поэтому каждый раз, когда появляется новый ImageView
, он будет удерживать свое положение в своем теге. Затем просто добавьте OnClickListener()
в getView()
.
OnClickListener(View view)
содержит вид, который был нажат пользователем. Поэтому, когда пользователь щелкнет любое изображение в списке. Затем он будет передан OnClickListener(View view)
в виде щелчка. И мы знаем, что наш ImageView
содержит позицию как тег. Итак, тег может сказать нам, что для этого ImageView
? должность. :)
@Override
public View getView(int position, View convertView, ViewGroup parent) {
if(convertView == null){
convertView = inflater.inflate(R.layout.list_row, parent, false);
}
ImageView imageView = (ImageView) convertView.findViewById(R.id.videoListImage);
imageView.setTag(new Integer(position));
imageView.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View view) {
Toast.makeText(mContext, "ImageView clicked for the row = "+view.getTag().toString(), Toast.LENGTH_SHORT).show();
}
});
return convertView;
}
Вы получите нажатую ImageView
позицию.
@Override
public View getView(int position, View convertView, ViewGroup parent) {
System.out.println("getView " + position + " " + convertView);
ViewHolder holder = null;
if (convertView == null) {
convertView = LayoutInflater.from(conText).inflate(
R.layout.gridgoggle, parent, false);
holder = new ViewHolder();
convertView.setTag(holder);
} else {
holder = (ViewHolder) convertView.getTag();
}
holder.imageView1.setImageResource(Integer.parseInt((mData
.get(position).get("image"))));
holder.imageView1.setId(position);
holder.imageView1.setOnClickListener(new OnClickListener() {
public void onClick(View v)
{
int id = v.getId();
//here id is position.
Intent myIntent = new Intent(this, StopsScheduleActivity.class);
myIntent.putExtra("stop", id);
startActivity(myIntent);
}
});
return convertView;
}
В трех простых шагах:
1 В вашем адапторном методе getView (int position, View convertView, родитель ViewGroup):
ImageView imageview =(ImageView) convertView.findViewById(R.id.imageView);
imageview.setTag(new Integer(position));
2 В layout.xml
добавьте метод onClick()
в методе ImageView
3 implements onClick()
и извлекает индекс с помощью view.getTag()
`like this`
. Я отредактирую ваш вопрос
– Ab_
22 September 2016 в 15:53
setResult()
метод set Intent в нем. и получить это намерение вonActivityResult()
. Посмотрите stackoverflow.com/questions/920306/… – user370305 9 December 2015 в 15:19onActivityResult()
в действии только правильно? Если я увольняю намерение из класса адаптера, где я должен писатьonActivityResult()
? – Jas 10 December 2015 в 04:24Adapter
, и вы используете контекст дляstartActivityForResult()
.. – user370305 10 December 2015 в 14:57