5

私は次のレイアウトを持っています

<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@android:color/white" >

<LinearLayout
    android:id="@+id/answerMainFrame"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:background="@android:color/white"
    android:isScrollContainer="true"
    android:onClick="toQuestion" >

    <ImageView
        android:id="@+id/answer_img"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:adjustViewBounds="true"
        android:contentDescription="@string/question_img_cd" />

    <TextView
        android:id="@+id/answer"
        style="@style/Question" />
</LinearLayout>

ScrollViewが小さすぎて画面全体に表示されない場合もありますが、それでも画面toQuestion()の任意の場所をクリックしてメソッドを呼び出したいと思います。

とに設定android:layout_height="wrap_content"してみましたが、同じ結果になりました。LinearLayoutandroid:onClick="toQuestion"ScrollView

4

3 に答える 3

34

属性をLinearLayout実装してから設定することができます:onClick

android:fillViewport="true"

ScrollView

于 2012-05-18T11:11:49.607 に答える
0

同様の問題があり、単にスクロールビュー自体を取り除きました。代わりに、TextView 自体を直接挿入し、以前に ScrollView に制約を設定しました。私の ScrollView の全体的な目的は、複数のアイテム間ではなく、TextView をスクロールすることでした。そのため、よりエレガントな方法のように見えました。

activity.hmtl の textview に (垂直) スクロールバーを追加します。

    <TextView
    android:id="@+id/tvInfo"
    (...) 
    android:scrollbars="vertical" 
    />

これを onCreate メソッドに追加します。

    oTV = (TextView) findViewById(R.id.tvInfo);
    oTV.setMovementMethod(new ScrollingMovementMethod());

スクロール応答を記述する必要はありません。私はすきです。

ここで解決策を見つけました(thx Juned Mughal):

http://www.android-examples.com/make-textview-scrollable-in-android-programmatically/

于 2017-04-04T13:37:27.870 に答える
-2

スクロール ビューを画面全体に表示するには、次のようにします。

<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@android:color/white" >

<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/scrollView"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@android:color/white" >

クリックするには、これを onCreate メソッドに入れます。

((ScrollView) findViewById(R.id.scrollView))
                .setOnClickListener(new View.OnClickListener() {
                    @Override
                    public void onClick(View v) {
                        toQuestion();
                    }
                });
于 2012-05-18T11:02:17.130 に答える