gpt4 book ai didi

android - 如何在 Android 的 ListView 中为菜单项创建图标?

转载 作者:IT老高 更新时间:2023-10-28 22:22:34 25 4
gpt4 key购买 nike

我正在使用 ListView 来显示我的应用程序的主屏幕。
主屏幕本质上是一个menu,用于进入应用程序的不同部分。目前,我有 ListView 其内容以编程方式添加到 onCreate 方法中。

这是执行此操作的代码 fragment :

String[] mainItems = {
"Inbox", "Projects", "Contexts", "Next Actions"
}

@Override
public void onCreate(Bundle icicle) {
super.onCreate(icicle);
setContentView(R.layout.main);

setListAdapter(new ArrayAdapter<String>(
this, android.R.layout.simple_list_item_1, mainItems));
registerForContextMenu(getListView());
}

所以菜单本质上只是一堆节点,其文本包含在 mainItems 数组中。我知道我可以创建一个包含 ImageView 和 TextView 的 XML 布局(即 R.layout.mainMenu_item),但我不确定如何设置 ImageView 的图标。我已经看到有一个 setImageResouce(int resId) 方法,但是在使用 ArrayAdapter 生成时使用它的方法让我望而却步。有没有更好的方法来做到这一点?

最佳答案

我通常为 ListView 做的是通过扩展方便的 BaseAdapter 类来实现我自己的适配器。您将实现的抽象方法之一将是 getView() ,正如之前的海报所提到的。从那里您可以扩展包含 ImageView 的布局,使用 findViewById 获取对它的引用,并将图像设置为您添加到资源中的任何可绘制对象。

public View getView(int position, View convertView, ViewGroup parent) {

View row = inflater.inflate(R.layout.menu_row, null);

ImageView icon = (ImageView) row.findViewById(R.id.icon);
icon.setImageResource(..your drawable's id...);

return view;
}

关于android - 如何在 Android 的 ListView 中为菜单项创建图标?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/288044/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com