背景
我希望添加在alertDialog上显示的TextView中单击链接的功能。
问题
这一切都显示得很好,链接是可点击的。
但是,滚动非常慢,不允许快速滚动手势(轻弹?向上滑动?(。
此外,滚动条本身也变得不可见。
我尝试过的
这是我使用的代码:
public static void showWhatsNewDialog(final Activity activity)
{
final AlertDialog.Builder builder=new AlertDialog.Builder(activity);
builder.setTitle(R.string.whats_new);
final TextView textView=new TextView(activity);
textView.setTextSize(TypedValue.COMPLEX_UNIT_SP,18);
builder.setView(textView);
textView.setText(Html.fromHtml(...));
textView.setMovementMethod(LinkMovementMethod.getInstance());
textView.setClickable(true);
builder.setPositiveButton(android.R.string.ok,null);
builder.show();
}
问题
有没有更好的方法来实现这一点,从而解决滚动问题?
我建议您创建一个扩展Dialog
的类,并创建一个要在警报对话框中显示的布局,并将此Layout
设置为CustomDialog类。创建一个类似的布局
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<TextView
android:id="@+id/title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
<ScrollView
android:id="@+id/scrollview"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:fillViewport="true">
<TextView
android:id="@+id/message"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/message"
/>
</ScrollView>
</LinearLayout>
并将此布局设置为CustomDialog类。