Java 如何在android中打印另一个类的输出?
我正在做这个项目。当用户在微调器中选择位置并单击“下一步”时,它将显示来自另一个类的结果。但当我跑的时候,它什么也没做。事实上,这个按钮甚至不起作用。我不知道是什么问题。如果你们能帮我,那就太好了。谢谢这是我的源代码 这是包含微调器的片段Java 如何在android中打印另一个类的输出?,java,android,class,fragment,Java,Android,Class,Fragment,我正在做这个项目。当用户在微调器中选择位置并单击“下一步”时,它将显示来自另一个类的结果。但当我跑的时候,它什么也没做。事实上,这个按钮甚至不起作用。我不知道是什么问题。如果你们能帮我,那就太好了。谢谢这是我的源代码 这是包含微调器的片段 public class LetsGoFragment extends Fragment implements View.OnClickListener{ //constructor public static LetsGoFragment newInsta
public class LetsGoFragment extends Fragment implements View.OnClickListener{
//constructor
public static LetsGoFragment newInstance(){
LetsGoFragment fragment = new LetsGoFragment();
return fragment;
}
public LetsGoFragment(){
}
//variable to connect
Spinner spinnerTo;
Spinner spinnerFrom;
Button button;
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
//connecting the fragment to layout
View rootView = inflater.inflate(R.layout.fragment_lets_go, container, false);
//spinner and button
spinnerTo = (Spinner) rootView.findViewById(R.id.spinnerTo);
String textTo = spinnerTo.getSelectedItem().toString();
spinnerFrom = (Spinner) rootView.findViewById(R.id.spinnerFrom);
String textFrom = spinnerTo.getSelectedItem().toString();
button = (Button) rootView.findViewById(R.id.button);
return rootView;
}
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
private void setContentView(int activity_main) {
}
@Override
public void onClick(View v) {
if(spinnerTo.getSelectedItem().equals("Masjid Jamek")&& spinnerFrom.getSelectedItem().equals("Bukit Bintang")){
MasjidJamekToBukitBintang.class.toString();
}
}
}
这就是我想叫的班级
public class MasjidJamekToBukitBintang extends LetsGoFragment{
private TextView textViewResult;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContectView(R.layout.fragment_result);
//route 1
double MJtoPR = 1.20;
double PRtoHT = 1.20;
double HTtoIM = 1.20;
double IMtoBB = 1.20;
double route1 = MJtoPR + PRtoHT + HTtoIM + IMtoBB;
//route 2
double MJtoDW = 1.00;
double DWtoBN = 0.00;
double BNtoRC = 1.20;
double RCtoBB = 1.20;
double route2 = MJtoDW + DWtoBN + BNtoRC + RCtoBB;
//route 3
double MJtoPS = 1.00;
double PStoKLS = 1.00;
double KLStoTS = 1.20;
double TStoML = 1.20;
double MLtoHT = 1.20;
double HTtoIM1 = 1.20;
double IMtoBB1 = 1.20;
double route3 = MJtoPS + PStoKLS + KLStoTS + TStoML + MLtoHT + HTtoIM1 + IMtoBB1;
//shortest path
ArrayList al = new ArrayList();
al.add(new Double(route1));
al.add(new Double(route2));
al.add(new Double(route3));
System.out.println("Route choices :");
System.out.println("Route 1 : Masjid Jamek - Plaza Rakyat - Hang Tuah - Imbi - Bukit Bintang");
System.out.println("Fare : RM" + route1);
System.out.println("\nRoute 2 : Masjid Jamek - Dang Wangi - Bukit Nanas - Raja Chulan - Bukit Bintang");
System.out.println("Fare : RM" + route2);
System.out.println("\nRoute 3 : Masjid Jamek - Pasar Seni - KL Sentral - Tun Sambanthan - Maharaja Lela - Hang Tuah - Imbi - Bukit Bintang");
System.out.println("Fare : RM" + route3);
System.out.println("\nSaving cost route : RM" + Collections.min(al));
}
private void setContectView(int fragment_result) {
}
}您没有在
按钮上设置onClickListener
您需要设置onClickListener
,以使按钮在“单击”时正常工作
您需要执行以下操作:
button.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
// Put here the code you want to run everytime the button is clicked
}
}
我确实为片段实现了onClickListener。方法onClick也在那里,但按钮不起作用。这是为什么?您必须将onClickListener
设置为按钮,而不是设置它。