如何在Android中使用Onchanged和OnTouch用于相同的boutton

时间:2015-11-09 10:09:45

标签: java android eclipse

我正在处理我的工作中的Android应用程序而且我遇到了问题。

我需要知道如何在条件相同的按钮上使用OnchangedOnTouch方法?

例如:如果我的按钮位于左侧,则只能触摸它以执行某些操作,如果它位于右侧,则可以将其用作微调器。

1 个答案:

答案 0 :(得分:0)

对于这两种情况,我建议使用图像按钮。根据您的要求,在左侧使用图像按钮作为普通按钮,在右侧使用微调器。如果它在右侧,您可以使用变量“i”进行设置。如果重置方法,请更改方法。

 <ImageButton
        android:id="@+id/imageButtonSpinner"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginBottom="15dp"
     />

然后根据您需要的内容定义您的微调器。像这样可能是......

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
   android:id="@+id/spinnerLayout"
   android:layout_width="wrap_content"
   android:layout_height="wrap_content"
   android:orientation="vertical" >

    <ImageButton
       android:id="@+id/love"
       android:layout_width="wrap_content"
       android:layout_height="wrap_content"
        />

    <ImageButton
       android:id="@+id/hem"
       android:layout_width="wrap_content"
       android:layout_height="wrap_content"
       />

    <ImageButton
       android:id="@+id/love"
       android:layout_width="wrap_content"
       android:layout_height="wrap_content"
        />



</LinearLayout>

在mainActivity中

protected void onCreate(Bundle savedInstanceState) {
    ...

    addListenerToSpinnerButton();
}

private void addListenerToSpinnerButton(){
    spinnerButton = (ImageButton) findViewById(R.id.imageButtonSpinner);
    spinnerButton.setOnClickListener(new View.OnClickListener(){
        @Override
        public void onClick(View v){
            if(p != null)
                showSpinner(MainActivity.this, p);
        }
    });
}