0

「コメントしてください...」という値が事前に入力されたedittextフィールドがあります。ユーザーがこのフィールドに触れるとすぐに、このコンテンツを削除したいと思います。ドキュメントでは、onTouchEvent を edittext フィールドに追加できる可能性があることがわかりました。しかし、コンパイラエラーが発生するため、機能しません

The method onTouchEvent(MotionEvent) in the type TextView is not applicable for the arguments (new View.OnTouchListener(){})

私のコードは次のとおりです。

        comment.onTouchEvent(new View.OnTouchListener() {

            @Override
            public boolean onTouch(View v, MotionEvent event) {
                if (comment.getText().equals( R.string.comment_content )){
                    comment.setText( "" );
                    return true;
                }
                return false;

            }});

ありがとう

4

2 に答える 2

1

これを手動で行わないでください。Android はすでにこの機能を提供しています: "hint text" .

于 2012-12-18T18:22:35.057 に答える
0
MyEditor.setOnTouchListener(new OnTouchListener(){
@Override
public boolean onTouch(View v, MotionEvent event) {
    int inType = MyEditor.getInputType(); // backup the input type
    MyEditor.setInputType(InputType.TYPE_NULL); // disable soft input
    MyEditor.onTouchEvent(event); // call native handler
    MyEditor.setInputType(inType); // restore input type
    return true; // consume touch even
}
});

これはあなたの入力を無効にし、タッチワークに設定しています..

于 2012-12-18T18:31:34.167 に答える