Android中的“无法对非静态方法进行静态引用”

Android中的“无法对非静态方法进行静态引用”,第1张

Android中的“无法对非静态方法进行静态引用”

你要调用

showDialog
一个
DemoActivity
实例,而不是类本身。您只能调用的
ClassName.methodName()
方法是否定义为静态方法。
showDialog
不是静态方法。

要解决此问题,您需要实例化一个新实例

DemoActivity
或获取一个现有实例,然后调用
showDialog
它。

编辑: 如果在

DemoActivity
实例化此
Control
对象时已经有一个实例,则可能进行以下修改:

public class Control extends LinearLayout{    ...    // add an Activity instance    private Activity activity;    // set the Activity in your constructor    public Control(Context context, AttributeSet attrs, Activity activity)    {        super(context, attrs);        this.activity = activity;    }    @Override    protected void onFinishInflate()    {        ...// Use the instance activity hereactivity.showDialog(2);        ...    }}


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/5561379.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-12-14
下一篇2022-12-14

发表评论

登录后才能评论

评论列表(0条)

    保存