0

在 Android 3 中找不到此代码。除此之外还有其他样式吗?

powerButton.setBackground(getApplicationContext().getResources().getDrawable(R.drawable.lock));

错误是这个..

java.lang.NoSuchMethodError:android.widget.Button.setBackground。

4

2 回答 2

0
int sdk = android.os.Build.VERSION.SDK_INT;
if(sdk < android.os.Build.VERSION_CODES.JELLY_BEAN) {
//  use   setBackgroundDrawable();
} else {
 //  use setBackground();
}
于 2013-11-15T03:17:47.263 回答
0

setBackground(Drawable d)在 API 16(果冻豆)中引入。因此,您不能在 API 15 及以下版本中使用它。

作为替代方案,您可以使用setBackgroundResource(int resId)

你也可以这样做,

if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN)
   powerButton.setBackground(getResources().getDrawable(R.drawable.lock));
else
   powerButton.setBackgroundResource(R.drawable.lock);
于 2013-11-15T02:50:27.407 回答