如何为各种列表视图项打开不同的 XML?
Posted
技术标签:
【中文标题】如何为各种列表视图项打开不同的 XML?【英文标题】:how do I open different XMLs for various listview items? 【发布时间】:2018-12-04 21:25:59 【问题描述】:我使用数组适配器和列表视图生成了一个列表。现在我希望每次单击列表项时打开一个 XML 布局。所有 XML 的布局格式应该相同,但每个 XML 中的数据应该不同(针对不同的列表项)。 我该怎么做?这是代码
public class handgunsActivity extends AppCompatActivity
@Override
protected void onCreate(Bundle savedInstanceState)
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_handguns);
ArrayList<String> hg=new ArrayList<String>();
hg.add("M1911");
hg.add("Desert Eagle .50");
hg.add("Glock 17");
hg.add("Sig P226");
hg.add("Browning High-Power");
ArrayAdapter<String> item=new ArrayAdapter<>(this, android.R.layout.simple_list_item_1,hg);
final ListView list=(ListView)findViewById(R.id.root);
list.setAdapter(item);
【问题讨论】:
你的意思是当一个item被点击时你想打开一个Activity或者一个Fragment? 我猜最好打开一个片段,你有什么建议? 【参考方案1】:将项目点击监听器添加到您的列表中,然后获取所选项目并将其传递到您想要的任何地方
list.setOnItemClickListener(new android.widget.AdapterView.OnItemClickListener()
@Override
public void onItemClick(AdapterView<?> parent, View view,int position, long id)
// Here is the data, pass it any where
String item = (String) list.getItemAtPosition(position);
);
【讨论】:
以上是关于如何为各种列表视图项打开不同的 XML?的主要内容,如果未能解决你的问题,请参考以下文章
如何为 ListView 的 ContextActions 的 MenuItem 添加可见性绑定