私のアプリはほぼ完成しましたが、大きなバグに遭遇しました。タイトルが示すように; Galaxy Nexus でアプリをテストしました。これまでアプリをテストしてきたものよりも大きな画面。欲望 HD。このアプリは、DesireHD では問題ないように見えますが、GNexus では非常によくありません。
つまり、 Desire HD のスクリーンショットと GNexus のスクリーンショットです。
各フォルダー -hdpi -xhdpi などのイメージを作成しました。開発ガイドの 3:4:6:8 の比率に従って、正しく作成しました。それは間違いなく xhdpi から画像を取得しています。これは、aboutus と feedback の ImageView のデザインが変更されているため、わかります。
そこにあるものはすべてImageViewです。それについて言及する必要があります。正しく表示されない理由がわかりません。layout-xlarge で main.xml を作成してから、layout-sw360dp で作成しようとしましたが、どちらも問題を解決しませんでした。物事は本当に場違いに見えます。xhdpi イメージを取得していることを考えると、なぜそれらが正しくスケーリングされないのかわかりません。必要に応じて XML を投稿します。違いがないように見えるので、 res-layout フォルダーのみを持つことに戻りました。
今すぐ XML を追加することもできます: http://pastebin.com/PkzSDxxwに行きましょう- 上記のスクリーンショットで色分けしました。
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:fillViewport="true"
android:background="@color/mainback">
<!-- Title contains application info and content starts immediately below. -->
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<!-- red -->
<ImageView
android:id="@+id/ColourTitle"
android:layout_height="wrap_content"
android:layout_width="fill_parent"
android:src="@drawable/main_colourtitle"
android:contentDescription="@string/ContentDescColourTitle"/>
<!-- blue -->
<ImageView
android:id="@+id/PastSeason"
android:layout_height="wrap_content"
android:layout_width="fill_parent"
android:layout_below="@id/ColourTitle"
android:contentDescription="@string/ContentDescHistory"
android:layout_marginBottom="12dp"
android:layout_marginTop="12dp"
android:onClick="PastSeason"
android:src="@drawable/main_history"/>
<!-- green first row -->
<LinearLayout
android:id="@+id/DriveCurrent"
android:layout_height="wrap_content"
android:layout_width="match_parent"
android:layout_below="@id/PastSeason"
android:gravity="center"
android:layout_marginTop="7dp">
<ImageView
android:id="@+id/Drivers"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:onClick="F1Drivers"
android:src="@drawable/main_driver"
android:contentDescription="@string/ContentDescDriver"
android:layout_marginRight="30dp"/>
<ImageView
android:id="@+id/CurrentF1"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:onClick="CurrentSeason"
android:src="@drawable/main_currentseason"
android:contentDescription="@string/ContentDescCurrentF1"
android:layout_marginLeft="15dp"/>
</LinearLayout>
<!-- green 2nd line -->
<LinearLayout
android:layout_below="@id/DriveCurrent"
android:layout_height="wrap_content"
android:layout_width="match_parent"
android:gravity="center"
android:layout_marginTop="10dp"
android:id="@+id/TeamDriverRecord">
<ImageView
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:src="@drawable/main_driver_record"
android:contentDescription="@string/ContentDescDriverRecord"
android:layout_marginRight="30dp"
android:onClick="DriverRecord"/>
<ImageView
android:id="@+id/teamrecord"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:src="@drawable/main_team_record"
android:contentDescription="@string/ContentDescTeamRecord"
android:layout_marginLeft="15dp"
android:onClick="TeamRecord"/>
</LinearLayout>
<!-- faq aboutus feedback -->
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_below="@id/TeamDriverRecord">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/main_faq"
android:contentDescription="@string/ContentDescFAQ"
android:onClick="FAQPage">
</ImageView>
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/main_feedback"
android:contentDescription="@string/ContentDescFeedback"
android:onClick="FeedbackPage">
</ImageView>
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:contentDescription="@string/ContentDescAboutUs"
android:src="@drawable/main_aboutus"
android:onClick="AboutUs">
</ImageView>
</LinearLayout>
</RelativeLayout>
</ScrollView>
私は本当に助けがあればできるのですが、これは私を狂わせています。私はそれをすべてカバーしたと思っていました。:( ありがとう。
編集: Eclipse では、XML コーディングの横にある [Graphically Layout] タブでさまざまな画面サイズを選択すると、4 インチより大きい画面では画像が適切にスケーリングされません。Nexus S を選択すると、正常にスケーリングされます。次は GNexus で、それ以降は同じ問題が発生します。ImageViews は、より大きな画面サイズに合わせて拡大しません。