我正在尝试实现一个有多个项目的代码。
我可以填充ListView
并显示所有这些项目,但我想要展开视图onItemClick
。很遗憾,AdapterView
不支持addView()
。
所以现在我想使用addView()
通过遍历ArrayList<>()
来动态添加项目。
我该怎么做?
基本上,我想在TextView
内的ListView
旁边显示自定义键盘布局,并更新TextView
这就是我现在要做的。
public class OrderSummary extends Activity {
LinearLayout linearLayout;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_order_summary);
linearLayout = new LinearLayout(this);
View view = View.inflate(this, R.layout.top_bar_layout, null);
LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT);
linearLayout.addView(view, params);
view.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Toast.makeText(OrderSummary.this, "Clicked", Toast.LENGTH_SHORT).show();
}
});
}
}
答案 0 :(得分:1)
您可以做的是将LinearLayout
(方向设置为垂直)而不是ListView
。然后为每一行制作一个自定义视图,遍历ArrayList
,然后对视图进行充气,并继续使用LinearLayout
将其添加到addView()
。
P.S。没有实际的代码,我不能告诉你如何纠正你的代码。
答案 1 :(得分:0)
在您的代码中存在将linearLayout添加到主容器的问题?