2015-02-23 85 views
0

我有一个新闻列表。我用这个;android ImageView setContentDescription with ListAdapter

ListAdapter adapter = new SimpleAdapter(this, getXmlData(URL,KEY_ITEM,KEY_COLUMN), 
      R.layout.news_list, 
      new String[] { KEY_COLUMN[1],KEY_COLUMN[0] }, new int[] { 
     R.id.name,R.id.list_image}); 

KEY_COLUMN [1]是标题。 KEY_COLUMN [0]是id值。它必须隐藏。

我的问题是R.id.list_image。 我可以将KEY_COLUMN [0]设置为R.id.list_image的src。但是我想将KEY_COLUMN [0]设置为R.id.list_image的contentDescription。 你能帮忙吗?我不使用lazyadaptor等

EDİT: 我有新问题。如果我需要2个imageview数据,我该如何使用?

ListAdapter adapter = new SimpleAdapter(this, getXmlData(URL,KEY_ITEM,KEY_COLUMN), 
      R.layout.news_list, 
      new String[] { KEY_COLUMN[1],KEY_COLUMN[0],KEY_COLUMN[2] }, new int[] { 
     R.id.name,R.id.list_image,R.id.list_image}); 

KEY_COLUMN [0]设置为R.id.list_image KEY_COLUMN [2]设置为R.id.list_image

回答

0

的SRC的setContentDescription你需要使用定制粘合剂来做到这一点。可以在下一行添加如下内容来完成:

adapter.setViewBinder(new SimpleAdapter.ViewBinder() { 

     @Override 
     public boolean setViewValue(View view, Object data, 
       String textRepresentation) { 
      // Log.v(TAG, "Binding view: " + view); 

      if (view.getId() == R.id.list_image) { 
       ((ImageView) view).setContentDescription((CharSequence)) data); 
       return true; 
      } 

      return false; 
     } 
    }); 
+0

我需要这个。非常感谢。 – 2015-02-24 17:16:49

+0

如果我需要2个imageview数据,我该如何使用? ListAdapter adapter = new SimpleAdapter(this,getXmlData(URL,KEY_ITEM,KEY_COLUMN), R.layout.news_list, new String [] {KEY_COLUMN [1],KEY_COLUMN [0],KEY_COLUMN [2]},new int [ ] { R.id.name,R.id.list_image,R.id.list_image}); KEY_COLUMN [0]设置为R.id.list_image的setContentDescription KEY_COLUMN [2]设置为R.id.list_image的src – 2015-02-24 18:33:56