【发布时间】:2013-09-19 14:36:11
【问题描述】:
我的目标是隐藏文本并保持 textview 在活动中占据其空间,我已经通过使用将我的文本设置为不可见:
tv.setVisibility(View.INVISIBLE);
当按钮单击它显示文本时,一切正常,除了我的代码导致隐藏整个 textview 不仅文本,因为我将我的 textview 背景设置为可绘制形状,在文本周围形成红色边框:
android:background="@drawable/border1"
<TextView
android:id="@+id/introclusion_tv3"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/border1"
android:textSize="20sp" />
当启动应用程序时,您只能看到空白空间,在单击按钮后将用文本填充,但那里没有边框(来自形状背景),所以它隐藏了整个 textview,我需要它来隐藏文本并保留当 text 设置为 INVISIBLE 时显示其背景的 textview,
任何帮助将不胜感激,谢谢。
我就是这样做的:
TextView tv11=(TextView)findViewById(R.id.introclusion_tv3);
tv11.setText(Html.fromHtml(getString(R.string.introclusion_one)));
tv11.setVisibility(View.INVISIBLE);
然后点击但是输入正确的密码后,它会显示文本为:
Button dialogButton = (Button) dialog.findViewById(R.id.dialogButtonOK);
dialogButton.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
dialog.dismiss();
EditText password = (EditText) dialog.findViewById(R.id.password);
if( password.getText().toString().length() > 0 ) {
if( password.getText().toString().equals("test")) {
TextView tv11=(TextView)findViewById(R.id.introclusion_tv3);
tv11.setTypeface(FontFactory.getBFantezy(getBaseContext()));
tv11.setText(Html.fromHtml(getString(R.string.introclusion_one)));
tv11.setVisibility(View.VISIBLE);
}
【问题讨论】: