与TextView一样使用EditText - onClickListener

时间:2014-03-12 09:48:43

标签: android android-edittext onclicklistener

我有EditTexts而不是TextViews所以我可以选择一些文本来分享。

  android:textIsSelectable="true"
  android:editable="false"
  android:inputType="none"

但我在onClickListener上设置了问题。它几乎没有用,你可以在Log显示结果之前点击它10次。我可以这样做:

 android:focusable="false"

和onClickListener可以正常使用,但我无法选择任何要共享的文本

4 个答案:

答案 0 :(得分:1)

这对我有用在这个我能够选择文本并且可以在点击时显示祝酒词 只需长按您的编辑文本框,然后选择尽可能多的文本

layout.xml

<EditText
  android:id="@+id/justforFun"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:text="Just for Fun"
    android:focusable="true"
    android:editable="false"
    android:textIsSelectable="true" >
</EditText>

活动代码

EditText text = (EditText) findViewById(R.id.justforFun);
    text.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View v) {
            Toast.makeText(getApplicationContext(), "success", Toast.LENGTH_LONG).show();

        }
    });

答案 1 :(得分:0)

  yourEditTextHere.setOnTouchListener(new View.OnTouchListener(){
     public boolean onTouch(View view, MotionEvent motionEvent) {                                                       
        // your code here....
        //open keyboard all the time
        getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_VISIBLE);                
        return false;
     }
   });

答案 2 :(得分:0)

如果您只想选择文字,只需使用TextView即可。他们也具有textIsSelectable属性并提供更好的用户体验(因为用户认为他可以编辑EditText中的文本,但他不能)。

答案 3 :(得分:-2)

使用TouchListener而不是单击Listener。请参阅此链接,例如:“http://www.edureka.in/blog/android-tutorials-event-listeners/