如何在单击不同的按钮时在片段中的Textview中设置不同的字符串?

时间:2016-02-03 16:28:23

标签: java android android-fragments android-button

我是Android应用程序编程的新手。

我有两个片段 - fragmentA.xmlfragmentB.xml

fragmentA中有两个按钮 - 按钮一(id:btnOne)和按钮二(id:btnTwo)。

fragmentB中有TextView(id- textView

fragmentB java类中有两个String - string1string2

两个按钮均指fragmentB

当我按下按钮一时,我想要将textView文本设置为string1 当我按下按钮2时,string2

我该怎么做?

我在fragmentB java类中使用以下代码仅显示string1

public View onCreateView(
    LayoutInflater inflater, 
    ViewGroup container, 
    Bundle savedInstanceState) 
{
    View rootView = inflater.inflate(R.layout.oop_page,container,false);
    TextView textV = (TextView)rootView.findViewById(R.id.textView);
    textV.setText(string1);
    return rootView;
}

我可以在这里使用任何if-else语句吗?

感谢名单

2 个答案:

答案 0 :(得分:2)

在项目中创建Global课程并定义公开字符串..

public class Global{
  public static String TEXT = "";
}

Fragment A更改此TEXT按钮点击事件..

but1.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View arg0) {
        Global.TEXT = "string 1";
    }
});
but2.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View arg0) {
        Global.TEXT = "string 2";
    }
});

与其他按钮相同,如果你有

FragmentBsetText() ....中,将激光值更改为Text

text.setText(Global.TEXT);

答案 1 :(得分:0)

<强> FragmentA.java

public boolean btn1Clicked, btn2Clicked = false;
        Button button1 = (Button) rootViewfindViewById(R.id.button1);
            button1.setOnClickListener(new View.OnClickListener() {

              @Override
              public void onClick(View v) {
                btn1Clicked = true;
              }
            });

            Button button2 = (Button) rootView.findViewById(R.id.button2);
            button2.setOnClickListener(new View.OnClickListener() {

              @Override
              public void onClick(View v) {
                btn2clicked = true;
              }
            });

<强> FragmentB.java

 public View onCreateView(
        LayoutInflater inflater, 
        ViewGroup container, 
        Bundle savedInstanceState) 
    {
        View rootView = inflater.inflate(R.layout.oop_page,container,false);
        TextView tv1 = (TextView)rootView.findViewById(R.id.textView);
        if(!(FragmentA.btn1Clicked))
         {
        // Not Clicked
         }
        else{
           tv1.setText("Button 1 Clicked!")'
    }
        return rootView;
    }
相关问题