2

我使用以下样式来布局按钮:

<style name="Button.Web" parent="@android:style/TextAppearance.Small">
    <item name="android:layout_width">wrap_content</item>
    <item name="android:layout_height">wrap_content</item>
    <item name="android:singleLine">true</item>
    <item name="android:autoLink">web</item>
</style>

按钮本身嵌套在一些LinearLayouts包裹在 a 中ExpandableListView

<Button
    android:id="@+id/button_web"
    style="@style/Button.Web" />

在我的子类中,BaseExpandableListAdapter我为按钮的每个实例动态设置文本:

Button buttonWeb = (Button) convertView.findViewById(R.id.button_web);
buttonWeb.setText("http://www.example.com/" + page);

当我展开ExpandableListView按钮的项目时,会显示(参见“数字 2”和“数字 4”中的按钮)。但是,上面没有呈现文本。在我触摸按钮的那一刻,文本出现(参见“数字 3”中的按钮)。

ExpandableListView


实验

4

1 回答 1

1

我知道这个问题有点老了,但我遇到了类似的问题。在我的情况下,我必须将 xml 中的“android:textColorLink”属性另外设置为 autoLink 属性。TextView 的行为是相同的。

<Button
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:autoLink="phone|email"
    android:textColorLink="@color/yourDesiredLinkColor"/>

可能它不会帮助你,但希望其他人:)

于 2016-11-16T15:03:16.967 回答