私はABSバージョンを使用しています。4そして、アクションモードの閉じるアイコンのほかに表示されるデフォルトの「完了」テキストを変更する必要がありますが、実際にはその方法がわかりません。
少なくとも2つの理由から、テキストはカスタマイズ可能である必要があると思います。
「完了」はすべてのコンテキストに適しているわけではありません(たとえば、「キャンセル」の方が適切な場合があります。GalaxyTabの「マイファイル」アプリなど、いくつかのアプリを使用しています)
「完了」は、ユーザーの言語に応じてローカライズする必要があります
そのテキストをカスタマイズすることは可能ですか?もしそうなら、誰かがそれを行う方法を教えてもらえますか?
前もって感謝します。
編集
一時的な回避策を見つけました。これを次のように投稿します。
private TextView getActionModeCloseTextView() {
// ABS 4.0 defines action mode close button text only for "large" layouts
if ((getResources().getConfiguration().screenLayout &
Configuration.SCREENLAYOUT_SIZE_MASK) ==
Configuration.SCREENLAYOUT_SIZE_LARGE)
{
// retrieves the LinearLayout containing the action mode close button text
LinearLayout action_mode_close_button =
(LinearLayout) getActivity().findViewById(R.id.abs__action_mode_close_button);
// if found, returns its last child
// (in ABS 4.0 there is no other way to refer to it,
// since it doesn't have an id nor a tag)
if (action_mode_close_button != null) return (TextView)
action_mode_close_button.getChildAt(action_mode_close_button.getChildCount() - 1);
}
return null;
}
それが私が思いついた方法です。ABS4.0の構造に大きく依存していることに注意してくださいabs__action_mode_close_item.xml
。
これは私のシナリオでは機能しますが、ご覧のとおり、実際の「答え」に昇格させるのに十分満足できるとは言えないため、以前の投稿のみを編集しました。
それが他の誰かに役立つことを願っていますが、誰かがより良い、よりクリーンなソリューションを共有できることも願っています。