我已经在网络上搜索了很久,但似乎无法找到答案,即使在官方的Android文档中也是如此。
我正在创建一个应用程序,实现Android的新导航抽屉布局。该布局的文档可以在这里和这里找到。
在设计文档以及一些流行的应用程序(如Facebook和Google Currents)中,抽屉项前面有图标。
设计文档本身提到了它们,在“导航抽屉的内容”下
导航目标可以具有可选的前导图标以及尾部计数器。使用计数器通知用户有关相应视图中数据状态的更改。
不幸的是,开发者文档没有提到如何在此设置中实现图标。它描述了如何实现项目列表:
public class MainActivity extends Activity {
private String[] mPlanetTitles;
private ListView mDrawerList;
...
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mPlanetTitles = getResources().getStringArray(R.array.planets_array);
mDrawerList = (ListView) findViewById(R.id.left_drawer);
// Set the adapter for the list view
mDrawerList.setAdapter(new ArrayAdapter<String>(this,
R.layout.drawer_list_item, mPlanetTitles));
// Set the list's click listener
mDrawerList.setOnItemClickListener(new DrawerItemClickListener());
...
}
}
因为它们的实现使用了getStringArray(),所以我无法想到一种方法来修改行项目的xml以包含图标。这令人困惑,因为许多应用程序似乎可以很好地在每个文本项之前实现图标,并且设计文档甚至提到了添加图标。我觉得一定有一些简单的API调用来实现添加这些图标,但到目前为止,我找到的唯一实现方式似乎过于复杂了。
有人知道如何将图标添加到导航抽屉项吗?是否有一种使用简单API调用的方法可以做到这一点,或者所有这些公司(Facebook、Google等)都不得不寻找解决该问题的方法?
谢谢大家。