在导航抽屉中的项目旁边添加图标



我已经想了很长一段时间了。我浏览了这个网站和其他许多网站,但找不到任何有效的东西。我只想在导航抽屉中的每个项目旁边都有图标。我目前正在使用谷歌的导航抽屉示例应用程序使用的方法。

在MainActivity.java中,我有以下内容:

mColorTitles = getResources().getStringArray(R.array.colors_array);
mDrawerLayout = (DrawerLayout) findViewById(R.id.drawer_layout);
mDrawerList = (ListView) findViewById(R.id.left_drawer);
mColorIcons = getResources().getStringArray(R.array.color_icons);
adapter = new ArrayAdapter<String>(this, R.layout.drawer_list_item, mColorTitles);
// set a custom shadow that overlays the main content when the drawer opens
mDrawerLayout.setDrawerShadow(R.drawable.drawer_shadow, GravityCompat.START);
// set up the drawer's list view with items and click listener      
mDrawerList.setAdapter(adapter);
mDrawerList.setOnItemClickListener(new DrawerItemClickListener());

我的drawer_list_item.xml:

<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@android:id/text1"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:textAppearance="?android:attr/textAppearanceListItemSmall"
android:gravity="center_vertical"
android:paddingLeft="5dp"
android:paddingRight="16dp"
android:textColor="#000"
android:background="?android:attr/activatedBackgroundIndicator"
android:minHeight="?android:attr/listPreferredItemHeightSmall"/>

它目前只是让导航抽屉显示阵列中的彩色标题。我在另一个数组中有我想要的图标,它们遵循与我希望它们与颜色关联的完全相同的顺序。我甚至不知道如何开始将该阵列中的图标插入到导航项目中

如果有帮助的话,下面是我的字符串.xml(不是完整代码)中的数组

<string-array name="colors_array">        
<item>Home</item>
<item>Cherry</item>
<item>Crimson</item>
...
<array name="color_icons">
<item>@drawable/homeicon</item>
<item>@drawable/cherryicon</item>
<item>@drawable/crimsonicon</item>
...

我试过在drawer_list_item中放一个drawable,这很有效,但(当然)它总是放同一个。我想不出根据颜色来改变它的方法。我对android编程还比较陌生,所以如果我错过了一些简单的东西,我很抱歉。如果你能帮我,我将不胜感激,因为这基本上是我在将应用程序发布到Play Store之前最不需要做的事情。提前感谢!

只需在标题下方添加此代码

icon = new int[] { R.drawable.homeitem,
R.drawable.ic_cheryyitem};

相关内容

  • 没有找到相关文章

最新更新