现在我有一个id为“getUserName”的EditText和一个旁边的按钮(都在线性视图中),id为“setName” 我希望有人能够单击setName,并使EditText字段消失,按钮消失,TextView取而代之。这就是我到目前为止所做的:
public void setName(View view){
EditText editText = (EditText) findViewById(R.id.getUserName);
Button button = (Button) findViewById(R.id.setName);
TextView textView = (TextView) findViewById(R.id.displayName);
String playerName = editText.getText().toString();
((ViewManager)editText.getParent()).removeView(editText);
((ViewManager)button.getParent()).removeView(button);
Log.d("ScoreKeeper", playerName);
}
所以我成功地从屏幕上删除了所需的元素,但我不知道如何添加textView来取代它们。
我该怎么做?我是Android的新手,所以如果这看起来无知,请原谅我。我试过看了!
由于
OPSRCFTW
答案 0 :(得分:5)
您可以使用转弯可见性隐藏EditText,Button和TextView。
您可以在xml文件中添加textview并使其保持不可见。 点击按钮,只需更改其可见性... 所以代码在下面点击如下:
textview.setVisibility(View.VISIBLE);
edittext.setVisibility(View.GONE);
button.setVisibility(View.GONE);
答案 1 :(得分:1)
First -> make ur textview Gone,
textview..setVisibility(View.GONE)
when u click the button..
Second -> Make
`Make the EditText and Button GONE with` `edittext.setVisibility(View.GONE);` and make textview visible textview..setVisibility(View.VISIBLE)
答案 2 :(得分:1)
从
开始怎么样?textView.setVisibility(View.GONE);
然后将OnClickListener设置为您的按钮:
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
textView.setVisibility(View.VISIBLE);
}
});
答案 3 :(得分:1)
编写类的onCreate方法代码
EditText editText = (EditText) findViewById(R.id.getUserName);
Button button = (Button) findViewById(R.id.setName);
TextView textView = (TextView) findViewById(R.id.displayName);
textView.setVisibility(View.GONE);
button.setOnClickListener(new View.OnClickListener()
{
@Override
public void onClick(View v)
{
editText.setVisibility(View.GONE);
button.setVisibility(View.GONE);
textView.setVisibility(View.VISIBLE);
}
});
希望它会对你有所帮助。
答案 4 :(得分:0)
您还可以动态创建文本视图,例如textview view = new textview(context);通过布局参数设置高度和宽度;然后将此视图添加到父视图或pare布局,如父view.addview(textview)。更改按钮和编辑文本的可见性,而不是完全删除它们。
答案 5 :(得分:0)
on startup
textView.setVisibility(View.GONE);
on button click
textview.setVisibility(View.VISIBLE);
edittext.setVisibility(View.GONE);
button.setVisibility(View.GONE);