как добавить флажок внутри фрагментов, которые влияют на основное действие
Привет, ребята, я попытался добавить флажок в фрагменте, но я не могу подключить его к основному действию, чтобы флажок внутри фрагмента изменил текстовое представление внутри основного действия
код, который я использовал для Fragment java,
package com.example.eyad.fragwork;
import android.app.Activity;
import android.os.Bundle;import android.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.CheckBox;
public class Fragm extends Fragment {
CheckBox c1,c2,c3;
changeT ct;
public Fragm() {
// Required empty public constructor
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View v=inflater.inflate(R.layout.fragment_, container, false);
c1=(CheckBox)v.findViewById(R.id.c1);
c2=(CheckBox)v.findViewById(R.id.c2);
c3=(CheckBox)v.findViewById(R.id.c3);
if(c1.isChecked())
ct.changtxt(c1.getText().toString());
if(c2.isChecked())
ct.changtxt(c2.getText().toString());
if(c3.isChecked())
ct.changtxt(c3.getText().toString());
return v;
}
public interface changeT{
public void changtxt(String S);
}
@Override
public void onAttach(Activity activity) {
super.onAttach(activity);
ct=(changeT)activity;
}
}
и код для основного вида деятельности
package com.example.eyad.fragwork;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.TextView;
public class MainFrag extends AppCompatActivity implements Fragm.changeT{
TextView tv;
String w="";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main_frag);
tv=(TextView)findViewById(R.id.textView);
tv.setText(w);
}
@Override
public void changtxt(String S) {
if(S.equals("be happy"))
w +=S;
if(S.equals("no worries"))
w +=S;
if (S.equals("it will be okay"))
w +=S;
}
}
и на странице xml mainactivity есть рис.
введите описание изображения здесь
все готово