我在onCreate方法中将以下内容设置为可见。
findViewById(R.id.noDesignsCallToAction).setVisibility(View.VISIBLE);
在XML中,视图设置为可见性消失。
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:weightSum="1"
android:orientation="vertical"
android:layout_below="@id/toolbar"
android:id="@+id/linearLayout">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/go_ahead_create_something_n_it_s_really_easy_n_just_click_here_to_get_started"
android:textAppearance="?android:attr/textAppearanceLarge"
android:id="@+id/noDesignsCallToAction"
android:padding="10dp"
android:textSize="14sp"
android:typeface="sans"
android:visibility="gone"
android:onClick="LaunchCustomizer"
android:gravity="center_vertical|center_horizontal" />
</LinearLayout>
为什么textview在我的应用中不会显示?
答案 0 :(得分:1)
确保先设置内容视图。否则,由于在活动布局中找不到ID,您将获得NPE。
使用实例(不要调用findViewById(id).setVisibility()
因为它使用更多内存而不是将TextView缓存为字段),然后设置可见性。
setContentView(R.layout.layout);
TextView temp = (TextView) findViewById(R.id.noDesignsCallToAction);
temp.setVisibility(View.VISIBLE);
答案 1 :(得分:1)
给它充气,然后设置它的可见性。
setContentView(R.layout.something);
TextView tv = (TextView) findView...;
tv.setVisibility(View.VISIBLE);
也许字符串res是空的?
答案 2 :(得分:1)
在布局文件中更改textview的textColor,或检查是否有任何视图与textview重叠。