我正在处理我的工作中的Android应用程序而且我遇到了问题。
我需要知道如何在条件相同的按钮上使用Onchanged
和OnTouch
方法?
例如:如果我的按钮位于左侧,则只能触摸它以执行某些操作,如果它位于右侧,则可以将其用作微调器。
答案 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);
}
});
}