tipos resultado propiedades obtener mostrar ejemplo datos como capturar botones java android android-fragments android-button

java - resultado - ¿Cómo establecer diferentes cadenas en una vista de texto en Fragmento mientras se hace clic en un botón diferente?



propiedades jbutton java (2)

Soy nuevo en la programación de aplicaciones de Android.

Tengo dos fragmentos: fragmentA.xml y fragmentB.xml .

En fragmentA hay dos botones: Button One (id: btnOne ) y Button Two (id: btnTwo ).

En el fragmentB B hay TextView (id- textView )

En la clase fragmentB java hay dos String - string1 y string2

Ambos botones se refieren a fragmentB .

Quiero dos establecer el texto textView en string1 cuando string1 Button One y string2 cuando string2 botón dos.

¿Cómo puedo hacer eso?

Estaba usando el siguiente código en la clase fragmentB java para mostrar solo 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; }

¿Puedo usar cualquier declaración if-else aquí?

Gracias


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


Crea una clase Global en tu proyecto y define una cadena pública .

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

En tu Fragment A cambia este TEXT en el botón clic evento.

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

lo mismo que en otro botón si tiene

En tu FragmentB simplemente setText() .... tomará el cambio de valor de lase en Text

text.setText(Global.TEXT);