android :关于循环textView 与数组的问题

我定义了一个数组代替xml解析出来的数据:privateStringname_title[]={"1","2","3","4","5","6","7","8"};以下是我... 我定义了一个数组 代替xml解析出来的数据 :
private String name_title[] = { "1", "2", "3", "4", "5", "6", "7", "8"};
以下是我循环的代码
for (String str_Title : name_title) {

TextView t = new TextView(this);
t.setText(str_Title);

t.setBackgroundResource(R.drawable.bk);
LinearLayout linear = new LinearLayout(this);
linear.setBackgroundResource(R.drawable.bg_comment_grey);
linear.addView(t, 80, 45); //textView的大小
listView = new ListView(this);
listView.setHorizontalScrollBarEnabled(true);
listView.addHeaderView(linear);// 设置listHeader 始终位于列表顶部

listView.setAdapter(adapter);
HorizontalScrollView hsv = new HorizontalScrollView(this);
hsv.addView(listView);
setContentView(hsv);
}

问题是:循环之后值显示最后一个!!!
如图:

但是我想要这种效果(这个效果是我一个一个写的.........汗.)

求助大神 帮忙 看看 实现!!!!!
展开
 我来答
wicked_Harmous
2012-09-11 · TA获得超过690个赞
知道小有建树答主
回答量:229
采纳率:0%
帮助的人:220万
展开全部
其实这类似一个二维数组。如果我来实现的话,嵌套for循环实现吧,水平方向循环new LinearLayout,添加所有列,并add到HorizontalScrollView中;垂直方向循环new TextView,并且add到LinearLayout中。这样实现出来的效果是可以左右滚动,但是不可以上下滚动。
按你的想法应该是,垂直方向一个ListView,那你不要循环去new ListView,这肯定有问题;如果你的横向数组是恒定的,那你可以定义一个CustomLayout,就像上面图,你可以定义4个TextView,使用一个adapter,inflate这个布局出来,然后动态实现你垂直方向数据添加,这些不用你循环,adapter的getView方法会帮你循环,你只要将数据元赋给adapter就行。如果你的横向数据也不是恒定的,那你需要根据你横向数据长度,来循环new出N个TextView,再添加到一个Linearlayout中,然后你可以将Linearlayout循环到ListView里边去。但是我不清楚listView和HorizontalScrollView放在一起会不会有手势的冲突问题,需要你自己去实现。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
_446865422
2012-09-19 · TA获得超过229个赞
知道小有建树答主
回答量:320
采纳率:0%
帮助的人:157万
展开全部
LinearLayout linear = new LinearLayout(this);

你是否应该把这句提到for语句外面去?否则你哪次都是加到一个新的LinearLayout中,当然只能显示最后一条记录了。
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式