TextView hieght = wrap_content 不工作
TextView hieght = wrap_content is not working
我有一个 LinearLayout
,其中包含一个 TextView
:
<LinearLayout
android:id="@+id/addTaskDescriptionLLId"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="16dp"
android:layout_marginEnd="16dp">
<TextView
android:id="@+id/descriptionTextViewId"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:maxHeight="150dp"
android:hint="@string/abcd"
android:textColor="#A2A2A2"
android:ellipsize="end"
android:layout_margin="10dp"/>
</LinearLayout>
我还在 java 文件中添加了一个条件,条件是如果 TextView
在打开 activity 期间有一些文本,那么它将是可见的,否则我使用 descriptionTextView.setVisibility(View.GONE);
然后我通过打开一个对话框在 textView
中添加一些文本,然后 onConfirm
(单击对话框的肯定按钮)我做了以下操作:
@Override
public void onConfirm(String description) {
this.description = description; //the string that I write in dialog
descriptionLL.removeAllViews(); //parent LineanLayout of TextView
descriptionLL.addView(descriptionTextView);
descriptionTextView.setText(description);
descriptionTextView.setVisibility(View.VISIBLE);
}
但是 TextView 的高度并没有像我在 xml 文件中提到的那样保持 wrap_content。
我也试过了:
descriptionTextView.setLayoutParams(new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTENT));
那也不起作用..有什么解决办法吗?
我认为您在 xml
中指定的提示导致了问题。删除它,它可能会解决。
我有一个 LinearLayout
,其中包含一个 TextView
:
<LinearLayout
android:id="@+id/addTaskDescriptionLLId"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="16dp"
android:layout_marginEnd="16dp">
<TextView
android:id="@+id/descriptionTextViewId"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:maxHeight="150dp"
android:hint="@string/abcd"
android:textColor="#A2A2A2"
android:ellipsize="end"
android:layout_margin="10dp"/>
</LinearLayout>
我还在 java 文件中添加了一个条件,条件是如果 TextView
在打开 activity 期间有一些文本,那么它将是可见的,否则我使用 descriptionTextView.setVisibility(View.GONE);
然后我通过打开一个对话框在 textView
中添加一些文本,然后 onConfirm
(单击对话框的肯定按钮)我做了以下操作:
@Override
public void onConfirm(String description) {
this.description = description; //the string that I write in dialog
descriptionLL.removeAllViews(); //parent LineanLayout of TextView
descriptionLL.addView(descriptionTextView);
descriptionTextView.setText(description);
descriptionTextView.setVisibility(View.VISIBLE);
}
但是 TextView 的高度并没有像我在 xml 文件中提到的那样保持 wrap_content。 我也试过了:
descriptionTextView.setLayoutParams(new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTENT));
那也不起作用..有什么解决办法吗?
我认为您在 xml
中指定的提示导致了问题。删除它,它可能会解决。