3

私はある時点で構造体であるアプリケーションを開発しています。

私のアプリケーション要件に従って、xmlで水平スクロールビューを作成し、次に.javaで垂直スクロールビューを次のように作成しました。

// Vertical Scroll view in Linear layout
ScrollView scrollView = new ScrollView(this);
scrollView.setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT));

次に、プログラムでテーブルビューを作成し、スクロールビューに追加しました。実行時にテキストを設定し、これをテーブルビューに行として追加したいので、複数行の編集テキストを作成して無効にしました..

EditText editText = new EditText(this);
editText.setId(1);
editText.setLayoutParams(new TableLayout.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT,0f));
editText.setInputType(InputType.TYPE_TEXT_FLAG_MULTI_LINE);
editText.setGravity(Gravity.TOP|Gravity.LEFT);
editText.setHint("Comment");
editText.setSingleLine(false);
editText.setLines(5);
editText.setMaxLines(5);
editText.setText(CommentFromDB);
editText.setEnabled(false);

tableLayout.addView(editText);

// Add table in Horizontal scroll view
scrollView.addView(tableLayout);

今、私はコードで達成する編集テキストをスクロール可能にしたい:

editText.setOnTouchListener(new OnTouchListener() {
        public boolean onTouch(View view, MotionEvent event) {
            if (view.getId() == 1) {
                view.getParent().requestDisallowInterceptTouchEvent(true);
                switch (event.getAction()&MotionEvent.ACTION_MASK){
                case MotionEvent.ACTION_UP:
                    view.getParent().requestDisallowInterceptTouchEvent(false);
                    break;
                case MotionEvent.ACTION_DOWN:
                    view.getParent().requestDisallowInterceptTouchEvent(false);
                    break;
                }
            }
            return false;
        }
    });

しかし、編集テキストは簡単にスクロールできません。スムーズなスクロールが必要です。

その方法を教えてください。

4

4 に答える 4

0

EditTextに追加

 android:inputType="textMultiLine"
于 2014-10-26T19:38:27.893 に答える