1

私はAndroidの世界で初心者で、Androidアプリに取り組んでいます。

アプリで多くのボタンと画像ボタンを使用しました。

今、それらを背景画像に置き換えたいと思います。(だから私は素敵なGUIを簡単に作ることができます)

ビューリスナーを使用できることを知っており、onclick メソッドからクリックされた x 座標と y 座標を見つけることができます。

しかし、画像のどの部分がクリックされたかをどのように見つけられるかを知りたいです。電話によって解像度が異なるため、これを効率的に行うにはどうすればよいですか?

そしてもう1つ、このようにguiを処理するのは良いですか? ありがとう !

4

3 に答える 3

1

私の知る限り、この方法で GUI を処理することはお勧めできません。ほとんどの場合、Android の画面サイズは標準的ではないため、すべてのデバイスで完全に機能するとは限りません。もちろん、onTouchListener を使用してイベントを処理し、MotionEvent オブジェクトの座標から画像のどの部分がクリックされたかを確認できます。しかし、私はそうすることをお勧めしません。

さまざまな画面サイズのレイアウトを作成し、Buttons と ImageButtons を使用してイベントを処理するとよいでしょう。

于 2013-03-16T17:19:23.390 に答える
1

他のコードを実行する前に、最初に初期ウィンドウの幅と高さを設定し、画面サイズに基づいた品質の画像をロードする必要があります。たとえば、サイズの異なる 3 セットの画像を持つことができます。1 つは 5 インチ以下の画面用です。もう1つは7インチタブレット用。10 の場合はもう 1 つ、それ以上の場合は超高品質の画像がもう 1 つある可能性があります。近い将来登場する多くのデバイスは、以前に開発されたよりもはるかに高い解像度に達しています。手元にある初期ウィンドウ サイズを検出するコードを最初に実行し、そのデバイスの解像度に基づいて画像をロードするだけです。あなたが計画するように彼らのプログラムから。

また、上記の回答にジャンプします。回転イベントを検出し、それに応じて画像を調整します。それに応じて更新します。もちろん、プログラミングを追加していますが、あなたが求めていることができない理由はありません。いくつかの余分なイベントを検出するだけで、やりたいことを正確に達成することができます。

于 2013-03-16T17:28:40.097 に答える
0

レイアウト xml ファイルの背景画像に android:background 属性を使用できます...

ただし、UI 要素の背景をプログラムで設定することもできます

于 2013-03-16T17:28:13.217 に答える