【发布时间】:2017-03-14 16:02:10
【问题描述】:
我试图让片段中的按钮在单击时增加一个文本字段如果我不使用片段但我无法让它在片段中工作,我可以做到这一点没有问题。
我创建了一个非常基本的测试应用程序。
t1 应该将值设置为 numOfClicks 但在调试时 t1 值始终为空。
private int numOfClicks;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
{
View v = inflater.inflate(R.layout.page1, container,false);
Button button1 = (Button) v.findViewById(R.id.btn1);
button1.setOnClickListener(this);
Button button2 =(Button)v.findViewById(R.id.btn2);
button2.setOnClickListener(this);
// EditText t1 = (EditText)v.findViewById(R.id.numClicked);
// t1.setOnClickListener(this);
return v;
}
@Override
public void onClick(View v)
{
switch (v.getId()) {
case R.id.btn1:
//button code here
//toast statement works!
//Toast.makeText(v.getContext(), "yeah", Toast.LENGTH_SHORT).show();
EditText t1 = (EditText)v.findViewById(R.id.numClicked);
numOfClicks++;
t1.setText(Integer.toString(numOfClicks));
break;
case R.id.btn2:
Toast.makeText((v.getContext()), "button 2 pressed", Toast.LENGTH_SHORT).show();
break;
}
}
【问题讨论】:
-
只需从 onClick 中删除 v.findViewById(R.id.numClicked) 使其成为 onCreateView
标签: android android-fragments fragment