0
我是Android新手,我有這種問題。我想使用fragA
複選框將文本添加到fragB
從fragA
。當我選擇一個CheckBox時,文本將出現,但是當我選擇其他CheckBox時,應該添加的文本不可見。只有當我取消選中其他CheckBox時,它纔會顯示。如何向字符串數組添加字符串
請幫幫我。
這裏是我的弗拉加:
public class fragA extends Fragment implements View.OnClickListener{
CheckBox c1,c2,c3;
communicator comm;
@Nullable
@Override
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, Bundle savedInstanceState) {
return inflater.inflate(R.layout.frag_a,container,false);
}
@Override
public void onActivityCreated(@Nullable Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
comm=(communicator)getActivity();
c1=(CheckBox)getActivity().findViewById(R.id.c1);
c1.setOnClickListener(this);
c2=(CheckBox)getActivity().findViewById(R.id.c2);
c2.setOnClickListener(this);
c3=(CheckBox)getActivity().findViewById(R.id.c3);
c3.setOnClickListener(this);
}
@Override
public void onClick(View v) {
String final_text=" ";
ArrayList<String> selection=new ArrayList<String>();
if(c1.isChecked()){
selection.add("O");
for(String Selections:selection){
final_text=final_text+Selections+"\n";
}
}
else if(c2.isChecked()) {
selection.add("My");
for(String Selections:selection){
final_text=final_text+Selections+"\n";
}
}
else if(c3.isChecked()) {
selection.add("God");
for(String Selections:selection){
final_text=final_text+Selections+"\n";
}
}
comm.respond(""+final_text);
}
}
因爲多於一個的複選框可以被檢查。如果您只希望在任何給定時間選擇一件事物,則使用RadioButtons或在選擇新的複選框時取消選中其他複選框。 –
抱歉誤會。但是我想一次選擇多個複選框,我不能。例如我選擇了c1和c2,所以輸出將是「我的」,但它沒有。它只顯示「O」,因爲我先選擇了c1 – jack
然後刪除「else if」。如果(c1.isChecked()){// whatever},if(if(if)'),那麼只檢查一個,而不檢查其他if c2.isChecked()){//無論}等。 –