忍者ブログ
Counter :
下手の横好きが綴る コンデジ写真 + 多肉ブログです。

Author : K

Camera : SONY NEX-5R(ミラーレス)
     Canon PowerShot S5 IS(コンデジ)

Web : Robamimi
脱出ゲーム作ってます。子供から大人まで遊べるゲームです。ぜひ遊んで見て下さい♪

MY FAVORITES
  • 2017.03
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 2017.05
[222]  [221]  [220]  [219]  [218]  [217]  [216]  [215]  [214]  [213]  [212

スポンサーリンク

×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

ずーーーーっと
eclipseという
アンドロイド アプリの開発ソフトと
にらめっこしてます。

ずーっと解けない
難問があるんです。

それがコレ
↓↓↓↓↓
赤いのが、クリックポイント


レイアウトです。
アンドロイドは機種が多くて、
それぞれ画面サイズが違うので、
こうやってズレちゃうんです。

脱出ゲームは、背景画像に合わせて
透明なボタンを配置するわけで、
ズレちゃうと、ゲームにならないんですよね。

でも、ベースがXMLだから
配置が、センタリングとか、右寄せとか
とってもアバウトなんですよね。

px単位で指定すると、
解像度でずれてしまうのですが、
pxに変わるものとして、
"dp"というアンドロイド独自の単位がありまして、
解像度の違いを吸収してくれるらしいんです。

ということで、中央を基準に
背景画像を配置して、
ボタンを中央に配置してから
マージンとボタンサイズを
dpで指定しているんですが
やっぱりずれる。。。

たぶん、
アスペクト比が原因なんだろうなぁ。。。

あぁ・・・どなたか・・・
「こうすればいいよ!」
というスゴ技をお持ちでしたら
ご教授頂けませんでしょうか・・・><。

(何もでませんけど・・・w)

**************************************************
ランキングに参加しました!
ポチッと応援よろしくお願いします♪
にほんブログ村 花・園芸ブログ 多肉植物へ
にほんブログ村
**************************************************

拍手

無題
androidの解像度違いは凄いメンドクサイですよね・・・
スゴ技は持ってないですけど、私なりの方法を書いてみます(^^;)

xmlはRelativeLayoutにし、子ウィジェットとして背景画像やクリックゾーンを配置していくやり方をとっていました。
私の場合もcenterを基準にすると意味不明なレイアウトずれが多かったんで、子ウィジェットの属性に
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
を指定して、全て左上を基準にしてました。
この方法だと背景画像とクリックゾーンのズレは無くなるんですが、端末によっては画面に変な余白が出てしまったりするので、dpの数値を変えたxmlファイルを1アクティビティに対して2種類ほど用意し、端末の解像度ごとに大雑把に振り分けてました。
私は面倒だったんで2つだけでしたが、多ければ多い程、綺麗に対応出来る端末も増えると思います。
それでもどうしてもカバーしきれない変わった解像度の端末のものは、マーケット上からキックして弾いてました。

独自の方法なので、もっと良い方法はあると思いますが、少しでも参考になれば(^^;)
2014/03/07(Fri)01:04:37 編集
Re:無題
うわぁ♪ ありがとうございますー!!

FrameLayoutにして、画像もボタンも
 layout_gravity="center"
 wrap_content
 ボタンサイズ=dp指定
 margin=dp指定
にしていたんです。

教えて頂いたように
RelativeLayoutにして、layout_gravity="center"を消して、
 layout_alginParentTop="true"
 layout_alginParetLeft="true"
に変更してみたんですが、やっぱりボタンがズレてしまいました。涙
どこか、私のやり方が間違っているみたいです;;

で、昨日、ブログを書いた後も続きをしていたんですが、
当たり前なんですが、自分が基準としている画面より小さいサイズで崩れているのに気づきまして、
泉さんが教えてくださったように、sw<N>dpでフォルダわけして
解像度別でXMLを指定する方法にしてみました。
それでも、まだ崩れる端末もあるんですが、
マーケットで未対応指定できるなら、そうさせて頂こうかと思います。

実は、フォルダ分けをしようと、いじっていたら、変なエラーが出まして、
エラーを解消したら、フォルダごと消える
ということを、やらかしました。苦笑。

なので、またXML作り直しですので、もう少しRelativeLayoutをお勉強してみたいと思います。
本当に、丁寧に教えて下さって、ありがとうございました!!
めっちゃ、助かりましたぁ~♪
K  【2014/03/07 10:27】
無題
あ、RelativeLayout駄目でしたか^^;
でも問題解決されたようで、良かったです。

データ消えるのは、悲しいですね・・・。
私も、マーケットにアップしてるアプリのデータで一つ、見つからなくて、見て見ぬ振りしてるのがあります。笑

でわでわ、開発頑張って下さいね~^^
2014/03/08(Sat)11:11:08 編集
Re:無題
お返事ありがとうございます~!
あらら、、泉さんのデータも行方不明なんですね。。
データの復旧作業をしてたら、今度はエミュレータがエラー連発で、なかなか前途多難ですが、頑張ります!
本当に、ありがとうございました。
K  【2014/03/08 19:58】
無題
いつ個素晴らしいゲームをありがとうございます
暇な時や、イライラした時に遊んでリラックスしてます!これからもがんばってください!
g 2014/03/14(Fri)10:28:00 編集
Re:無題
コメントに気づかず、失礼しました。
応援ありがとうございます。
ちょっと、心が折れそうなときでしたので、滲みました~♪
拙いゲームですが、また遊びにきてくださいね^^
K  【2014/03/20 16:22】
この記事にコメントする
※ブログの内容に関係のない、ゲームに関するコメントは、ゲームの掲示板を使ってください。※
お名前
タイトル
メールアドレス
URL
コメント
パスワード   Vodafone絵文字 i-mode絵文字 Ezweb絵文字

★このブログ素材は、フリー素材*ヒバナ* * 様からお借りしました。

Copyright © roba*photo . All rights reserved.