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

How to set Different String in a Textview in Fragment while clicking different Button?

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

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

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

fragmentB中有TextView(id-textView)

fragmentBjavaclass中有两个String-string1string2

两个按钮都指的是fragmentB

我想要两个 当我按下按钮一时将 textView 文本设置为 string1string2 当我按下按钮二时。

我该怎么做?

我在 fragmentB java class 中使用以下代码仅显示 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 语句吗?

谢谢

在你的项目中创建一个Globalclass并定义一个public字符串..

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);

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;
    }