我的活動中有一個GridView。我在GridView中有2個元素。一個是ImageView和一個TextView。從適配器的主要活動中的gridview的子項目獲取單擊事件
我想只做點擊ImageView的操作,請記住我希望在活動中發生這種情況,而不是在GridView適配器中發生。
現在我有一個適配器,我可以使用ImageView調用getView()中的click動作,但我不想那樣。我希望這種情況發生閒置在那裏我打電話,
GridView gridview = (GridView) findViewById(R.id.gridview);
gridview.setAdapter(new ImageAdapter(this, items));
gridview.setOnItemClickListener(new AdapterView.OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View v, int position, long id) {
//THIS WORKS FINE
String string = ((TextView) v.findViewById(R.id.text)).getText().toString();
Log.d("string",string);
//THE PROBLEM OCCURS HERE
ImageView capture = (ImageView) v.findViewById(R.id.capture);
capture.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
}
});
}
//的問題時這裏
當我第一次點擊的ImageView是應該發生的動作,不會發生。相反,它發生在第二次點擊和進一步。
這就是我所困擾的問題。我想要在第一次點擊時發生此操作,而不是第二次點擊。
因爲你有兩個點擊監聽器裏面。如果你想單獨爲TextView和ImageView單擊,你應該使用'getView()'。 –