我是Java和xml的新手,我遇到了一个问题。我已经创建了一个显示文本的应用程序,然后当按下按钮时它会更改文本,我有的问题是我希望文本在我第二次按下按钮时返回到原始文件
final TextView ad1 = (TextView) findViewById(R.id.t5);
final Button b1 = (Button) findViewById(R.id.b1);
b1.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
// Perform action on click
ad1.setText("random text");
}
});
}
<TextView
android:id="@+id/t5"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_below="@+id/t4"
android:layout_margin="5dp"
android:gravity="center"
android:text="@string/t5"
android:textColor="#ffffff"/>
<Button
android:id="@+id/b1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/t5"
android:layout_centerHorizontal="true"
android:layout_margin="10dp"
android:layout_marginTop="14dp"
android:text="@string/b1"
android:textColor="#ffffff" />
答案 0 :(得分:1)
试试这个:
b1.setOnClickListener(new View.OnClickListener()
{
private String originalText = null;
public void onClick(View v)
{
if (originalText == null) originalText = ad1.getText().toString();
if (ad1.getText().toString().equals(originalText))
{
// Setting a new text
ad1.setText("random text");
}
else
{
// Setting back the original text
ad1.setText(originalText);
}
}
});
答案 1 :(得分:0)
这就是诀窍。
String newString = "Whoa!";
String lastString;
public void action_Clicked(View view){
switch(view.getId()){
case R.id.button1:
exchange();
break;
}
}
private void exchange(){
lastString = text.getText().toString();
text.setText(newString);
newString = lastString;
}