我想将我的应用程序的徽标放在屏幕顶部的操作栏中。当前显示的是默认的绿色android启动器图标。
我尝试了以下但未看到任何变化:
我进入了我的清单文件并修改了android:icon代码......
<application
android:allowBackup="true"
android:logo="@drawable/logo"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
这不起作用,所以我在我的代码中创建了一个ActionBar对象并使用了setIcon方法。
ab.setIcon(R.drawable.logo);
但是上面的代码行会生成以下运行时错误:
** java.lang.RuntimeException:无法启动活动ComponentInfo {com.example.waitronproto3 / com.example.waitronproto3.MainActivity}:java.lang.NullPointerException **
任何人都可以看到为什么会这样,资源R.drawable.logo存在,因为我可以在文件夹中看到它并且IDE中没有生成错误。
非常感谢任何帮助。
答案 0 :(得分:1)
是的,据我所知,没有android:logo
财产。你不能只创建一个ActionBar
...你使用过这个吗?
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(...);
getActionBar().setLogo(R.drawable.logo)`
}
答案 1 :(得分:0)
一切都是对的,除了我忘了引用ActionBar。下面的代码解决了这个问题。
ab = this.getActionBar();
ab.setIcon(R.drawable.logo);