真正的答案之前只有一些提示:
>使用第一个大写字母作为班级名称
>请勿将首字母大写用作ID
>不要如下创建新的OnClickListener实例,而要实现接口
>全局意图变量没有多大意义
现在是“快速”答案:
public class Courses extends Fragment {
Intent intent, anotherIntent;
@Nullable
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View root = inflater.inflate(R.layout.courses, container, false);
intent = new Intent(getActivity(), Software_course.class);
anotherIntent = new Intent(getActivity(), YourSecondActivityName.class);
final Button button = (Button) root.findViewById(R.id.software_Course);
final Button button2 = (Button) root.findViewById(R.id.software_Course2);
button.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
startActivity(intent);
}
});
button2.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
startActivity(anotherIntent);
}
});
return root;
}
}
这是我的建议:
public class Courses extends Fragment implements View.OnClickListener {
@Nullable
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View root = inflater.inflate(R.layout.courses, container, false);
root.findViewById(R.id.software_Course).setOnClickListener(this);
root.findViewById(R.id.software_Course2).setOnClickListener(this);
return root;
}
public void onClick(View v) {
switch(v.getId()) {
case R.id.software_Course:
startActivity(new Intent(getActivity(), Software_course.class));
break;
case R.id.software_Course2:
startActivity(new Intent(getActivity(), YourSecondActivityName.class));
break;
}
}
}