在我的 android 应用程序中,当我使用 java 代码创建一个按钮时,我希望能够在其中存储一个字符串,然后在按下它时再次获取该字符串。
谁能告诉我如何做到这一点?
谢谢,
您可以使用View.setTag()
andView.getTag()
来存储和检索字符串。因此,当您按下按钮时,您可能会使用方法回调 OnClickListener,onClick(View v)
因此您可以使用v.getTag()
.
首先在 xml 文件中创建按钮(假设为 activity_main.xml)
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
<Button
android:id="@+id/btnMessage"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onClick="onClick"
android:text="Click" />
</LinearLayout>
然后从您自己的活动中,您可以找到它并从中添加/检索信息。
public class MainActivity extends ActionBarActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// find button by id
Button btn = (Button)findViewById(R.id.btnMessage);
// enclose secret message
btn.setTag("Bruce Wayne is Batman");
}
// this function is triggered when the button is pressed
public void onClick(View view) {
// retrieve secret message
String message = (String) view.getTag();
// display message in the console
Log.d("Tag", message);
}
}
此方法可用于隐藏信息(例如数据库密钥或超级英雄的秘密身份)。