Java 怎么能ı;在小部件中添加垂直滚动条?

Java 怎么能ı;在小部件中添加垂直滚动条?,java,android,android-layout,android-widget,scrollbar,Java,Android,Android Layout,Android Widget,Scrollbar,我是android的初级开发人员,我创建了小部件。我想在我的小部件中添加垂直滚动条。我如何才能做到这一点?谢谢 我的小部件代码: static void updateAppWidget(Context context, AppWidgetManager appWidgetManager, int appWidgetId) { int id = 0; if (MyNotesWidgetActivity.widgetProcess == "create") { id

我是android的初级开发人员,我创建了小部件。我想在我的小部件中添加垂直滚动条。我如何才能做到这一点?谢谢

我的小部件代码:

static void updateAppWidget(Context context, AppWidgetManager appWidgetManager, int appWidgetId) {
    int id = 0;
    if (MyNotesWidgetActivity.widgetProcess == "create") {
        id = CustomAdapter.cid;
    } else{
        id = CustomAdapter.uid;
    }
    DataSource dataSource = new DataSource(context);
    dataSource.open();
    String content = dataSource.getNote(id);

    RemoteViews views = new RemoteViews(context.getPackageName(), R.layout.my_notes_widget);

    views.setTextViewText(R.id.appwidget_text, content);
    appWidgetManager.updateAppWidget(appWidgetId, views);
}
xml文件:

<LinearLayout
    android:orientation="vertical"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@color/colorMyBlue"
    android:padding="@dimen/widget_margin"
    xmlns:android="http://schemas.android.com/apk/res/android">
    <TextView
        android:id="@+id/appwidget_text"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerHorizontal="true"
        android:layout_centerVertical="true"
        android:layout_margin="8dp"
        android:background="@color/colorMyBlue"
        android:contentDescription="@string/appwidget_text"
        android:text="@string/add_widget"
        android:textColor="#ffffff"
        android:textSize="24sp"
        android:textStyle="bold|italic" />
</LinearLayout>

选项-1:使用
滚动视图
使视图可滚动

<ScrollView android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:fillViewport="true"
    xmlns:android="http://schemas.android.com/apk/res/android" >

    <LinearLayout
        android:orientation="vertical"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="@color/colorMyBlue"
        android:padding="@dimen/widget_margin">
        <TextView
            android:id="@+id/appwidget_text"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_centerHorizontal="true"
            android:layout_centerVertical="true"
            android:layout_margin="8dp"
            android:background="@color/colorMyBlue"
            android:contentDescription="@string/appwidget_text"
            android:text="@string/add_widget"
            android:textColor="#ffffff"
            android:textSize="24sp"
            android:textStyle="bold|italic" />  
    </LinearLayout>
</ScrollView>
然后在代码中将
setMovementMethod
设置为
ScrollingMovementMethod

[appwidget_text].setMovementMethod(new ScrollingMovementMethod());

我用计算机解决了这个问题 单元素listview结构

我希望对你的问题有所帮助


那你有什么问题吗?我正在从用户添加的笔记中获取小部件内容。太长的内容不适合小部件。并非所有内容都可见。因此,我想向小部件添加一个滚动条。然后尝试使用选项2[appwidget_text].setMovementMethod(新的滚动移动方法());ı如何从RemoteView对象访问[appwidget_text](TextView对象)?或者通过什么方式到达这个对象?小部件不支持ScrollView,所以第一个解决方案根本不起作用。
[appwidget_text].setMovementMethod(new ScrollingMovementMethod());