Androidは誰もがアクションバーの項目のオプションについては、長いクリックを知ることができ、私はあなたがあなた自身を作成する場合はアクションバー長押しAndroidのアクションバーのオプション長いクリックイベント
4
A
答えて
4
の長押し上のヒントのようなアクションバーのメニューオプションでLongClick上のテキストを表示したいですアクションビューをandroid:actionLayout
経由で利用することができます。長いクリックイベントのために、独自のウィジェットでリスナーを設定することは大歓迎です。自分で作成しないウィジェットにはアクセスできません。
5
user1206890、あなたは長いクリックイベントを聞く必要はありません。あなたがアクションのヒントを表示したい場合は、十分なタイトルをmenuに追加してください。 2.3と4.0でチェックしました。
11
アクションバーのメニュー項目を長押ししてもらいたいですか?私の場合、2,3時間後にこの解決策を見つけました。これは私にとって完璧に機能します。
@Override
public boolean onCreateOptionsMenu(final Menu menu) {
getMenuInflater().inflate(R.menu.menu, menu);
new Handler().post(new Runnable() {
@Override
public void run() {
final View v = findViewById(R.id.action_settings);
if (v != null) {
v.setOnLongClickListener(new CustomLongOnClickListener());
}
}
});
return true;
}
5
私にとって、次のアプローチは新しいAndroidバージョンでうまくいきます。Android 4.2とAndroid 5.0.1でテストしました。
アイデアは、カスタムアイコンビューでアクションアイコンビューを置き換えることです。ここでは、ワンクリックを処理しなければならず、長いクリックを処理できます。
外観を通常のアクションバーアイコンのようにしたい場合は、次のように動作します。
まず、アイコン付きのImageButtonだけを含むレイアウトを作成します。
<?xml version="1.0" encoding="utf-8"?>
<ImageButton xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/myButton"
style="?android:attr/actionButtonStyle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:contentDescription="@layout/text_view_initializing"
android:src="@drawable/ic_action_plus" />
このImageButtonをアクションバーに配置し、リスナーをアタッチします。
MenuItem myItem = menu.findItem(R.id.my_action);
myItem.setActionView(R.layout.my_image_button);
myItem.getActionView().setOnClickListener(new OnClickListener() {
@Override
public void onClick(final View v) {
// here, I have to put the stuff that normally goes in onOptionItemSelected
}
});
myItem.getActionView().setOnLongClickListener(new OnLongClickListener() {
@Override
public boolean onLongClick(final View v) {
// here, I put the long click stuff
}
});
重要な注釈:これは、アクションバーに項目が表示されている場合にのみ有効です。したがって、メニュードロップダウンにオプションが表示されている場合、長いクリックで何をしたいかはこの方法ではアクセスできません。
0
「findViewById」は最も簡単に見つける方法です。
ただ
View action_example = findViewById(R.id.action_example);
if(action_example!=null)action_example.setOnLongClickListener(
new View.OnLongClickListener() {
@Override
public boolean onLongClick(View v) {
Toast.makeText(MainActivity.this, "action_example", Toast.LENGTH_SHORT).show();
return true;
}
}
);
関連する問題
- 1. jqtransformとオプションのクリックイベント
- 2. アクションバーの長いクリックでポップアップを開く
- 3. Android:アクションバーのスタイルオーバーフローメニュー
- 4. Android - アクションバーのカスタムスタイル
- 5. Androidのアクションバー
- 6. Android 2.1のアクションバー
- 7. Android:アクションバーのないスワイピータブ
- 8. 通知長押しオプションAndroid
- 9. Androidのアクションバーのホームボタン
- 10. Androidのアクションバーのタブバーディバイダ
- 11. Androidのタブのアクションバー
- 12. Androidアクションバー
- 13. シークバーサムの長いクリックイベントを検出する
- 14. Androidのアクションバーのテキストの色
- 15. Androidアクションバー:アプリケーションアイコン&タイトル
- 16. Androidのアクションバーの色とメニュー
- 17. Androidのアクションバーが表示されない
- 18. Androidアクションバーのカスタマイズとカスタムビュー
- 19. Androidのアクションバーを隠す
- 20. AndroidのアクションバーsetActionViewレイアウト問題
- 21. ShareActionProvider androidのアクションバーなし
- 22. AndroidスタジオのTextViewクリックイベント
- 23. ナビゲーションバーのクリックイベント - Androidアプリケーション
- 24. Androidアクションバー - タブ付き
- 25. 選択オプション要素の角度クリックイベント
- 26. Androidのアクションバーのタブアイコンのアイコンのサイズ
- 27. 長い文字列のオプションの改行
- 28. アクションバーを使用しているAndroid Ui
- 29. Androidのアクションバーには何の項目
- 30. Androidのレイアウト:アクションバーの下にフィットビュー
を行い、その後、有用だった考慮トーストの大きさを取るhttp://stackoverflow.com/a/21026866/630833に応じて、必要なトーストを、置きます。 – jayeffkay