2

アプリの上部に、中央に表示されるタイトルと右側にボタンがあります。textViewsの長さが私のコントロールの背後にあるため、コンテンツの長さが長いために、タイトルがボタンと交差することがあります。

これに従った後、私はどういうわけか問題を解決する傾向があります。私のデバイスはHTCdesireでした。残念ながら、Galaxy SIIIで確認しても、うまくいきません。

密度の異なるさまざまなデバイスの観点から、これをどのように管理できるのか疑問に思っています。

相対レイアウト内の私のコントロール

4

4 に答える 4

1

これでデバイスの画面密度を確認することもできます--

    WindowManager wm = (WindowManager) _context.getSystemService(Context.WINDOW_SERVICE);
    Display display = wm.getDefaultDisplay();
    int screenWidth = display.getWidth();
    int screenHeight = display.getHeight();

それに応じて、アプリに必要なものを管理できます..

于 2012-12-12T05:51:14.890 に答える
0
Display display = ((WindowManager) ctx.getSystemService(Context.WINDOW_SERVICE)).getDefaultDisplay();
DisplayMetrics dm = new DisplayMetrics();
display.getMetrics(dm);
float density = dm.density; 
int screenWidth = display.getWidth();

上記のコードを使用すると、画面密度がfloatになります。したがって、これを使用して、次のようにtextViewの幅を計算できます。

int newWidth = (int) (density * 100);

ここでは100がベースのサイズです。または、screenWdithに応じた比率を設定できます。

int newWidth = screenWidth / 2;
于 2012-12-12T06:14:05.447 に答える
0

xmlでweightsumを使用し、すべてのビューの幅を親として塗りつぶすだけです.....これにより、テキストビューの自動サイズ変更が行われます。

于 2012-12-12T05:47:54.760 に答える
0

DPIに従ってレイアウトを維持し、XHDPIで同じXMLデータを複製し(S3がXHDPIに分類されるため)、同様にテストしてHDPIでXMLデータを複製しますが、layOutの次のThing Pixel Ratioを次のように覚えておいてください

LDPI では 1:0.75 MDPI では 1:1 HDPI では 1:1.5 XHDPI では 1:2

于 2012-12-12T05:50:22.950 に答える