使用setView时,AlertDialog的TextView滚动缓慢



背景

我希望添加在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类。

相关内容

  • 没有找到相关文章

最新更新