gpt4 book ai didi

java - 在 fragment 后面添加方法

转载 作者:行者123 更新时间:2023-12-01 17:30:17 25 4
gpt4 key购买 nike

我有一个 fragment ,它是一个“计时器”,我可以将其添加到任何地方。在 fragment 中,我以编程方式更改了 textView,并且它运行得非常漂亮。我的问题是,当涉及到在其下面的另一种方法中使用由构造函数(?不确定这是否是正确的术语)膨胀的布局中的 View 时。

public class Timer_fragment extends android.support.v4.app.Fragment {
int testpins;
String testedpin;
TextView text;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View v = inflater.inflate(R.layout.timer_frag, container, false);

TextView text = (TextView) v.findViewById(R.id.pwd_status);
text.setText("Setting text in fragment not main");
/* set the TextView's text, click listeners, etc. */
updateStatus();
return v;
}

所有代码都可以正常工作,但当我尝试添加此方法时:

private void updateStatus() {
TextView text = (TextView) findViewById(R.id.pwd_status);
testPin();

text.setText(testedpin);
}

我在 findViewById 下看到一条红线,表示 Timer_fragment 类型的方法 findViewById(int) 未定义

我考虑过在我的所有方法中膨胀 View 而不返回它们,但这肯定会以某种方式影响性能,对吗?

在使用 View 之前尝试膨胀布局,但我在单词 inflatercontainer 上收到错误,指出它们无法解析。

我的做法正确吗?

最佳答案

您的 Fragment 范围内已经有一个名为 text 的成员变量。不要在您的方法中重新声明它,只需分配它。

text = (TextView) v.findViewById(R.id.pwd_status);

private void upateStatus() {
testPin();
text.setText(testedpin);
}

关于java - 在 fragment 后面添加方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11722471/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com