2011-06-22 8 views
2

私は、EditText、RatingBar、および2つのボタンを含むダイアログボックスを持っています。レイティングバーlayout_widthはwrap_contentに伝えられましたが、編集テキストとボタンがそのレイアウトパラメータで作るスペースにうまく収まるように星を広げます。これは問題ではありませんが、半分の星で増やすように言いました。選択された星の値は、塗りつぶされた画像をチョッピングすることによってリアルタイムで描画され、星の任意の割合の評価を可能にしますが、スペースが含まれているように見えるので、私の半分の星は3番目または4つ星低dpiスクリーンでは星が自動的に小さくなります)、全体の星はうまく見えます。アンドロイド評価バーの拡散を止めるにはどうすればよいですか?

編集:私は、この症状がすべての場合において、右の星よりはるかに小さいことを左の星が示していることに気づいた。つまり、左の半分の星はわずかに外れているかもしれませんが、右の半分の星が最も遠くにあります。これは私がテストしたすべての電話機で発生します。編集を終了します。

私はそれが最も明白である携帯電話へのアクセスを持っていないが、あなたはまだここに効果を見ることができます。 A picture of a dialog with three full stars, a half star that isn't filled enough, and an empty star http://img534.imageshack.us/img534/1071/device2x.png

第四星がかなり半分を満たし、かつそれだけで悪化していませんいくつかの他の携帯電話。

これは私のレイアウトxmlです:

<?xml version="1.0" encoding="UTF-8"?> 
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="fill_parent" android:layout_height="wrap_content"> 
<LinearLayout android:orientation="vertical" 
    android:layout_width="fill_parent" android:layout_height="wrap_content" 
    android:padding="10dp"> 
    <EditText android:id="@+id/reviewWriteText" 
     android:layout_width="fill_parent" android:layout_height="wrap_content" 
     android:ems="13"/> 
    <RatingBar android:id="@+id/reviewStars" 
     android:layout_width="wrap_content" android:layout_height="wrap_content" 
     android:numStars="5" android:stepSize="0.5" /> 
    <LinearLayout android:layout_width="fill_parent" 
     android:layout_height="fill_parent" android:orientation="horizontal"> 
     <Button android:id="@+id/reviewWriteAccept" android:text="Accept" 
      android:layout_width="fill_parent" android:layout_height="fill_parent" 
      android:layout_weight="1" /> 
     <Button android:id="@+id/reviewWriteCancel" android:text="Close" 
      android:layout_width="fill_parent" android:layout_height="fill_parent" 
      android:layout_weight="1" /> 
    </LinearLayout> 
</LinearLayout> 
</ScrollView> 

答えて

-2

たぶん、あなたはあなたにマニフェストファイルを、これを追加することができます

<uses-sdk android:minSdkVersion="4" 
    android:targetSdkVersion="7"/> 

それとも、レーティングバーのパディングを変更する必要があります。

+0

私はすでにmin = 7とtarget = 7を持っています。私はパディングを試みたが、それはバー全体に影響を与え、横に押して、最後の星をエッジから落とした。興味深いことに、緑色の部分は移動しません(つまり、塗りつぶしが半分の近くに表示されない)ので、今はさらに悪化しています。私はなぜだろう...どちらの方法でも、これは解像度とdpisが異なるため、1つの電話機でのみ機能するソリューションです。特に異なる大きさの星を使用することを決めたときは特にそうです。 – AlbeyAmakiir

関連する問題