以编程方式设置按钮单击时的视图宽度

时间:2013-08-31 03:53:28

标签: java android

现在我有一个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

6 个答案:

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