我正在使用此代码
getActivity().getActionBar()
.setBackgroundDrawable(getResources().getDrawable(R.drawable.barlist));
由于api问题某些设备不支持我将如何更改为setBackground这样的事情
getActivity().getActionBar()
.setBackground(getResources().getDrawable(R.drawable.barlist));
这导致我这个错误
The method setBackground(Drawable) is undefined for the type ActionBar.
答案 0 :(得分:1)
Action Bar是在Android 3.0中引入的。所以一些运行在以下版本的设备将不支持它。
要支持较低版本的Action Bar,您可以使用支持库。 OR 您可以将套餐中的最低sdk目标设置为11
。
答案 1 :(得分:0)
根据文档,Action bar API仅在Android 3.0(API级别11)中添加。 为了在较低版本中使用操作栏,我们必须使用支持库。 http://developer.android.com/training/basics/actionbar/styling.html - 此文档将帮助您通过定义'android:style / Theme.Holo.Light'的子主题来设置操作栏的样式,并根据您的要求对其进行自定义。
答案 2 :(得分:0)
某些api级别无法使用某些方法。虽然有些可用。为了防止出现此类问题,在使用这些方法时阅读文档始终是好的或适当的。即使在使用eclipse时,他们也会提到该方法来自api级别1(再次是一个示例)或api级别11.基于此,获取sdk int版本并在if条件内使用您希望使用的方法。
答案 3 :(得分:0)