你好,我正在尝试设置一个计数器,每次点击增加一,但它没有响应。这是我的代码。我下面的教程https://codelabs.developers.google.com/codelabs/build-your-first-android-app/#7
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Inflate the layout for this fragment
View view = inflater.inflate(R.layout.fragment_first, container, false);
// View view1 = inflater.inflate(R.layout.fragment_first, container, false);
View fragmentFirstLayout = inflater.inflate(R.layout.fragment_first, container, false);
showCountTextView = fragmentFirstLayout.findViewById(R.id.text_first);
// button = view.findViewById(R.id.toast_button);
button = view.findViewById(R.id.count_button);
view.findViewById(R.id.count_button).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
countMe(view);
}
});
return fragmentFirstLayout; //view;
}
private void countMe(View view) {
// Get the value of the text view
String countString = showCountTextView.getText().toString();
// Convert value to a number and increment it
Integer count = Integer.parseInt(countString);
count++;
// Display the new value in the text view.
showCountTextView.setText(count.toString());
}
3条答案
按热度按时间3b6akqbq1#
fragment
:需要通过view
获取所有元素activity
:可以直接访问元素您的案例是
fragment
,因此有两种方法可以执行此操作1.将
showCountTextView
传递给countMe
函数或者通过
view
得到TextView
1.从
view
取得showCountTextView
iqxoj9l92#
这里有两种可能的情况。
看起来,view 和 fragmentFirstLayout 在z轴上一个在另一个之上。因此,当您单击时,将单击 fragmentFirstLayout,而不是 view。
或
uqcuzwp83#
你应该继续学习教程。他们在步骤4中解决了问题。如果你仍然有问题,这里是FirstFragment.java文件,对我来说很有用。
}