我有一个可以在任何地方添加的“计时器”片段。在片段中,我以编程方式更改了一个 textView,它运行得很漂亮。我的问题是,在它下面的另一种方法中使用构造函数膨胀的布局中的视图(?不确定这是否是正确的术语)。
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 下得到一条红线The method findViewById(int) is undefined for the type Timer_fragment
。
我想过在我所有的方法中夸大视图而不是返回它们,但这肯定会以某种方式影响性能,对吧?
刚刚尝试在使用视图之前膨胀布局,但我收到一个错误,inflater
并container
说它们无法解决。
我这样做对吗?