我在onCreate中有这个:
final TextVIEw text1 = (TextVIEw) findVIEwByID(R.ID.txtNextAlarm);
我正在尝试在同一个类中的方法中设置文本:
public static voID NextTxt(){ text1.setText("");}
但它不承认“text1”.
解决方法:
问题是静态方法不与任何特定对象相关联,而是与整个类相关联.因此,他们只能在您的班级中看到静态字段.你的text1变量甚至不是,如果你说的是真的.相反,它是一个局部变量,只存在于onCreate()方法的长度.如果你知道你只有一个你的活动实例(这可能不是一个不合理的假设),你可以做的就是使用
private static TextVIEw text1;
在你的班级的顶部(或者,基本上,在方法之外的任何地方).最终修饰符不会给你任何东西.您选择是公开还是私人,但我默认倾向于私人(除非有其他原因).
另一种方法是问问自己为什么NextTxt()是静态的;如果你使它成为普通的实例方法,那么你仍然需要在类中声明text1,但它不需要是静态的.但是你需要一个实例来调用它.
总结以上是内存溢出为你收集整理的java – Android如何在公共静态方法中设置TextView中的文本?全部内容,希望文章能够帮你解决java – Android如何在公共静态方法中设置TextView中的文本?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)