列表视图项目单击问题

时间:2013-05-08 20:13:14

标签: android listview listviewitem leadbolt

我添加了leadbolt广告(条目广告)。广告正常工作,但当我从近距离标志关闭广告时,listview.click不起作用。 (Listview.click不执行任何操作,当我删除AdController时它可以工作)

public class SoundList extends ListActivity {

int [] soundfile;
MediaPlayer mediaPlayer;
private AdController myController;
final Activity act = this;


@Override
public void onCreate(Bundle savedInstanceState) {    
    super.onCreate(savedInstanceState);


    myController = new AdController(act, "111111111");
    myController.loadAd();
    soundfile= new int[] {R.raw.sound1,R.raw.sound2.....};

    String[] sounds= getResources().getStringArray(R.array.sounds);        
    // Binding Array to ListAdapter
    this.setListAdapter(new ArrayAdapter<String>(this, R.layout.list_item, R.id.label, sounds));
    ListView lv = getListView();

    lv.setDescendantFocusability(ListView.FOCUS_BLOCK_DESCENDANTS);
    // listening to single list item on click
    lv.setOnItemClickListener(new OnItemClickListener() {
      public void onItemClick(AdapterView<?> parent, View view,
          int position, long id) {     

          Intent intent = new Intent(getApplicationContext(), SingleListItem.class);
          intent.putExtra("position", position);
          startActivity(intent);      

      }
    });
}

1 个答案:

答案 0 :(得分:3)

在ListView的一行中有一个可聚焦项会导致 OnItemClickListener 不被调用。

要解决此问题,请将以下代码添加到行视图中。

XML:

android:descendantFocusability="blocksDescendants"

爪哇:

listItem.setDescendantFocusability(FOCUS_BLOCK_DESCENDANTS);
相关问题