本文介绍了Button.setBackground(可绘制背景)抛出的NoSuchMethodError的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我实现了一个简单的方法来一个按钮添加到的LinearLayout 编程。

当我调用的setBackground(可绘制背景)方法,下面错误被抛出:

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

我addNewButton方式:

 私人无效addNewButton(整数ID字符串名称){

        按钮B =新的按钮(这一点);
        b.setId(ID);
        b.setText(名称);
        b.setTextColor(color.white);
        b.setBackground(this.getResources()getDrawable(R.drawable.orange_dot));
            // llPageIndicator是线性布局。
        llPageIndicator.addView(B);
}
 

解决方案

您可能会测试下方16级的API(的)。

的setBackground方法只从API级别开始。

我会尝试与setBackgroundDrawable (德precated)或者setBackgroundResource如果是这样的话。

例如:

 绘制对象D = getResources()getDrawable(R.drawable.ic_launcher)。
按钮一次=新的按钮(这一点);
// 平庸
one.setBackgroundDrawable(四);
两个按钮=新的按钮(这一点);
// 更好
two.setBackgroundResource(R.drawable.ic_launcher);
 

I'm implementing a simple method to add a Button to a LinearLayout programatically.

When I invoke the setBackground(Drawable background) method, the following Error is thrown:

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

My addNewButton method:

private void addNewButton(Integer id, String name) {

        Button b = new Button(this);
        b.setId(id);
        b.setText(name);
        b.setTextColor(color.white);
        b.setBackground(this.getResources().getDrawable(R.drawable.orange_dot));
            //llPageIndicator is the Linear Layout.
        llPageIndicator.addView(b);
}
解决方案

You might be testing on an API below level 16 (Jelly Bean).

The setBackground method is only available from that API level onwards.

I would try with setBackgroundDrawable (deprecated) or setBackgroundResource if that's the case.

For instance:

Drawable d = getResources().getDrawable(R.drawable.ic_launcher);
Button one = new Button(this);
// mediocre
one.setBackgroundDrawable(d);
Button two = new Button(this);
// better
two.setBackgroundResource(R.drawable.ic_launcher);

这篇关于Button.setBackground(可绘制背景)抛出的NoSuchMethodError的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

06-26 13:44