android设置静态i,java – Android如何在公共静态方法中设置TextView中的文本?

我在onCreate中有这个:

final TextView text1 = (TextView) findViewById(R.id.txtNextAlarm);

我正在尝试在同一个类中的方法中设置文本:

public static void NextTxt(){

text1.setText("");

}

但它不承认“text1”.

解决方法:

问题是静态方法不与任何特定对象相关联,而是与整个类相关联.因此,他们只能在您的班级中看到静态字段.你的text1变量甚至不是,如果你说的是真的.相反,它是一个局部变量,只存在于onCreate()方法的长度.如果你知道你只有一个你的活动实例(这可能不是一个不合理的假设),你可以做的就是使用

private static TextView text1;

在你的班级的顶部(或者,基本上,在方法之外的任何地方).最终修饰符不会给你任何东西.您选择是公开还是私人,但我默认倾向于私人(除非有其他原因).

另一种方法是问问自己为什么NextTxt()是静态的;如果你使它成为普通的实例方法,那么你仍然需要在类中声明text1,但它不需要是静态的.但是你需要一个实例来调用它.

标签:android,java,methods,textview

来源: https://codeday.me/bug/20190723/1510443.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值