問題タブ [uimenucontroller]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
4675 参照

iphone - @selectorと動的メソッドを使用した動的UIMenuItems

動的メニューにUIMenuControllerを使用しようとしています(タイトルとアクションはサーバーから取得されます)。問題は、UIMenuItems initWithTitle:action:を使用する必要があることです。ここで、actionは@selectorです。

@selector(dispatch :)を使用できますが、ユーザーがどのアイテムを押したかを区別できません。-(void)dispatch:(id)sender {NSLog(@ "%@"、sender); }は、それがUIMenuControllerであり、どのメニュー項目が押されたかを通知するメソッドがないことを示しています。

可能なすべてのセレクターをディスパッチするために100個のメソッドを作成することはできません。10個を超えることはありませんが、それでも、これは良い考えではないようです。

そのようなセレクターごとに動的メソッドを作成する必要がありますか?http://developer.apple.com/mac/library/documentation/Cocoa/Conceptual/ObjCRuntimeGuide/Articles/ocrtDynamicResolution.html?これも奇妙に思えます。

この2つよりも良い提案はありますか?

//このアプローチは機能しません。

//このアプローチは本当に醜いです。

0 投票する
4 に答える
4272 参照

iphone - UIMenuController を次々と表示する際の問題

UIMenuController の新しいカスタマイズ機能を使用して、「コピー」以外のものをメニューに追加し、Web ビューにカット アンド ペーストします。

私がしていることは、共有 UIMenuController への参照を取得し、UIMenuItems の NSArray を menuItems に設定することです。1 つの項目を追加する限り、すべてが正常に機能します。たとえば、[COPY|FOOBAR] が表示されます。

代わりに、複数のアイテムを追加しようとすると、[COPY|MORE] が表示されます。MORE を押すと、最終的に他のアイテムが表示されます。

代わりに [COPY|FOO|BAR|THREE|FOUR] を直接表示することは可能ですか? これを実行できるアプリケーション、特に iBooks をいくつか見ました。

どんな助けでも非常に感謝しています、ありがとう。

乾杯、シッセンシオ

0 投票する
2 に答える
3494 参照

iphone - UIMenuControllerでCOPYUIMenuItemを削除する方法

私はiPhoneアプリケーションを開発しており、UIWebViewsを使用しています。UiWebViewで文字列を強調表示したときにポップアップするUIMenuItemsをカスタマイズすることを計画しました(コピー、すべて選択、切り取りなど)。それらのmenuItemsを削除しようとしましたが、COPYメニュー項目を削除できません。

私はあなたの助けが必要です。

ありがとう、ZaldzBugz

0 投票する
1 に答える
12092 参照

iphone - UIMenuController カスタム項目

UIMenuController を作成し、次のようにカスタム メニュー項目を設定しました。

しかし、そのオブジェクトだけを表示したかったので、次のコードを追加しました。

問題は、「選択」、「すべて選択」、「貼り付け」など、他の ## 見出し ## アイテムがまだ表示されていることです。これは、これが に表示されることに関係している可能性がありますUITextView。しかし、他のすべてのアイテムを表示しないようにするにはどうすればよいですか?

0 投票する
1 に答える
867 参照

iphone - カスタム ビューでポップアップ メニューを表示するときにキーボードを閉じないでください

テキスト情報をユーザーに提示するために、独自の UIView サブクラスを作成しました。ユーザーは、このビューをダブルタップして「コピー」メニューをポップアップ表示できます。問題は、同じビュー コントローラー内の UITextView がファーストレスポンダー ステータスを辞任し、ポップアップ メニューが表示されたときにキーボードを閉じることです。どうすればこれを回避できますか? アプリケーションを標準の iPhone のメッセージ アプリケーションのように動作させたい: メッセージ バブルをダブルタップしてもポップアップ メニューが表示される間、キーボードは閉じられない。

0 投票する
4 に答える
6736 参照

iphone - UIMenuController がいつ閉じられるかを判断しますか?

UIMenuController がいつ閉じられたかを判断する方法はありますか? メニューが表示されたときに強調表示している (編集不可の) テキスト領域があり、アイテムを選択する (簡単) またはキャンセルする (不可能?) ときに強調表示を解除したい

0 投票する
1 に答える
163 参照

iphone - UIMuenuitemタイトルをカスタマイズする

テーブルを使用してメンバーのリストを表示しています。テーブル内のセルをクリックすると、いくつかのカスタムメニュー項目が作成され、cellviewクラスをカスタマイズしてメニューが表示されます。これで合計6つのメニュー項目があり、そのうちのいくつかは長さが長いですが、すべてのメニュー項目を表示するのに十分なスペースがあるようにメニュータイトルを折り返す方法はありますか?メニュー項目を作成しているときに、タイトルに「\ n」を付けようとしましたが、使用できませんでした。

また、メニュー項目をグループ化したいので、このために3つを異なる色で表示したいと思います。メニュー項目にテキストの色を設定して、そのうちの3つを1つの色にし、他の3つを異なる色にすることはできますか。

上記の2つのタスクの解決策があれば教えてください。

ありがとう。

0 投票する
2 に答える
4701 参照

iphone - 動的なカスタム UIMenuItem を表示前にコピー & ペースト メニューに追加する

カスタムUIMenuItemを iPhone アプリのコピー & ペースト メニューに追加することに成功し、標準のメニュー項目を取り除くためにUITextViewをサブクラス化することさえできました。ただし、メニューが実際に表示される前にメニューが表示されるという事実を何らかの方法でキャプチャし、挿入ポイントに単語をメニューに追加する必要があります。

たとえば、UITextViewのテキストが「This is a test.」の場合。、そして人が「is」という単語に触れた場合、その単語を UIMenuItem としてUIMenuController追加します。

タッチした直後にのみメニューに単語を表示することが重要です。次にメニューを呼び出すと、次にタッチした単語が表示されます。メニュー内の単語にタッチすると、詳細が表示されます。selectedRangeに基づいて touched という単語を見つけるコードが既にあります。メニューが表示される前に、その単語をUIMenuItemとして追加するだけです。もう 1 つの洗練されていない解決策は、ユーザーが静的なメニュー項目に触れてから、触れた単語に基づいてさまざまなオプションでメニューを追加および再表示できるようにすることです。

UIMenuControllerをサブクラス化してインターセプトする方法があることを願っています。これにより、バルーンが表示される前に挿入ポイントに到達できますが、メニュー項目リストを変更することで、バルーンに変更を加えることができます。

これを行う方法はありますか?だれかコード スニペットを見せてくれたり、役立つドキュメントを教えてくれませんか? ありがとう。

私の唯一の他の解決策は、どうにかして独自のバルーンを作成し、どういうわけかコピー & ペースト メニューを無効にすることです。私はむしろそれを試す必要はありません。

0 投票する
1 に答える
1345 参照

iphone - UIMenuControllerWillShowMenuNotification の NSNotifcation

iphone sdk 3.0で UIMenuController Notification をリッスンしようとしています。

しかし、私の通知は呼び出されないようです。これが私のコードです:

そして私の方法

しかし、「Call here」と表示されることはなく、ブレークポイントも停止しません。誰でもこの問題を解決する方法を知っていますか。

iphone sdk 4.0の setMenuItems のアプローチは知っていますが、sdk 3.0 で作業しています。

私の元の問題は、UIMenuController イベントをキャッチして、テキストの「Do A」、「Do B」などのボタンのツールバーを表示しようとしていることです。誰かがこれに対する解決策を知っているなら、私も感謝します

0 投票する
2 に答える
1324 参照

iphone - カスタム メニュー項目を UIMenuController に追加する場所は?

UIMenuControllerUITextView のサブクラスを作成しましたが、いくつかのボタンを追加してデフォルトを拡張したいと考えています。拡張機能の実行はまったく問題ありません。..の共有インスタンスの配列をいくつか追加する必要があるUIMenuItemだけmenuItemsですUIMenuController

私の質問は次のとおりです。この操作はどこで実行しますか? MenuController はシングルトン実装であるため、変更を加えるたびに、メニューをサポートする他のすべてのビューに影響します。では、余分なメニュー項目をどこに追加し、後でどこから削除するのでしょうか? viewWillAppearUIViewController のメソッドに相当するものを探しています。

または、心配しすぎて、UITextViewサブクラスを含むビューのビューコントローラーに実装することは完全に良い習慣ですか? ただし、これは、私のクラスをサブビューとして含むすべてのビュー コントローラーが同じコードを実装する必要があることを意味します。より良い方法はありますか?

編集:もちろん、別のオプションは、クラスのセレクターを一意に保ち、他のすべてのカスタムビューNOをセレクターに返すことです-respondsToSelector:。これは私にとってこれまでのところ最良の解決策のようです。

ベストプラクティスは何ですか?