2009-06-11 46 views
6

我正在关注有关GridView的android教程的示例,但不是显示图像,我只想简单地使用TextView显示一些文本。结果似乎比我想象的更难。它可能看起来像这是完全没有必要的,它没有一个有效的用例,但我试图让自己熟悉sdk。Android:在显示网格中显示文本的简单GridView

所以我的代码几乎是相同http://developer.android.com/guide/tutorials/views/hello-gridview.html GridView的例子,但不是使用ImageAdapter,我创建了一个虚拟适配器像以下:

public class MyAdapter extends BaseAdapter { 

    private Context context; 
    private String[] texts = {"aaa", "bbb", "ccc", "ddd", "eee", "fff", "eee", "hhh", "iii"}; 

    public MyAdapter(Context context) { 
     this.context = context; 
    } 

    public int getCount() { 
     return 9; 
    } 

    public Object getItem(int position) { 
     return null; 
    } 

    public long getItemId(int position) { 
     return 0; 
    } 

    public View getView(int position, View convertView, ViewGroup parent) { 
     TextView tv; 
     if (convertView == null) { 
      tv = new TextView(context); 
      tv.setLayoutParams(new GridView.LayoutParams(85, 85)); 
     } 
     else { 
      tv = (TextView) convertView; 
     } 

      tv.setText(texts[position]); 
     return tv; 
    } 
} 

这一切似乎有效的给我,但运行这在屏幕上什么都没给我。并没有错误信息。有一些可选/可点击(不可见)块,如果我点击它们,但文本显然不显示。我不知道是我的布局没有导致这个问题的android:文本?还是其他什么?

任何反馈将不胜感激,谢谢你的帮助!

回答

9

之间的关系。我按照您链接到的页面上的逐步说明来设置“Hello,GridView”,并使用您的代码并能够看到文本。

我改变了唯一的事情,而不是为ImageAdapter创建一个类我使用了MyAdapter。在活动HelloGridView.java onCreate中,我使用了“MyAdapter”而不是“ImageAdapter”。我根本没有改变布局。

alt text http://i41.tinypic.com/2rcwkmw.jpg

下面是运行代码时我得到一个截图。

+0

啊,谢谢你的确认。我只是重新启动我的日食,现在它不知何故地工作。 – fei 2009-06-12 01:29:57

0

我看到GridView,所以我几乎假设这与SWT类似?

如果是这样,你需要证明我不知道这可能是造成你的问题,你的看法和ViewGroup中父

0

我不认为你的getItem实现是正确的。我的头顶应该是

return texts[position];