【发布时间】:2014-02-12 15:17:32
【问题描述】:
我正在为一个简单的独立项目测试长按和短按功能。我打算做的是,当我点击一个按钮/标题时,它会调用一个片段,但是当我长按时,即使没有释放我的手指,我也希望显示弹出窗口。无论我长按还是短按,我当前的实现都会显示弹出窗口。我只想在长按而不是短按时显示弹出窗口。另外,通过弹出的选择菜单,我想触发一个与所选选项相关的片段。有没有办法做到这一点?你能修改我现有的代码来反映这一点吗? 谢谢! 这是我的代码: Mainactivity.java:
package com.example.longclick;
import android.os.Bundle;
import android.app.Activity;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;
import android.view.View.OnClickListener;
public class MainActivity extends Activity {
Button btnList;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
btnList = (Button)this.findViewById(R.id.btnListSample);
btnList.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
final CharSequence[] items = {"Personal Lists", "Shared Lists"};
AlertDialog.Builder listBuilder = new AlertDialog.Builder(MainActivity.this);
listBuilder.setTitle("Manage Categories");
listBuilder.setItems(items, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int item) {
Toast.makeText(getApplicationContext(), items[item], Toast.LENGTH_SHORT).show();
}
});
AlertDialog alertList = listBuilder.create();
alertList.show();
}
});
}
}
和相关的xml: activity_main.xml:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<Button
android:text="Lists Header"
android:id="@+id/btnListSample"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
>
</Button>
</LinearLayout>
【问题讨论】:
标签: android android-layout android-listview android-fragments android-button