2016-07-04 2 views
0

私は、指標の評価バーがあります。Android:インジケータの評価バーを変更するにはどうすればよいですか?

<RatingBar 
    android:id="@+id/ratingBar" 
    style="?android:attr/ratingBarStyleIndicator" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_centerHorizontal="true" 
    android:rating="2.5" 
    android:numStars="5"/> 

は、XMLは現在、2.5つ星を反映するために、評価バーに伝えていることがわかります。ボタンをクリックするだけで

、私はそれが代わりに5つ星を反映したいので、私はこのコードを書いた:

indicatorRatingBar = (RatingBar) findViewById(R.id.ratingBar); 
button.setOnClickListener(new View.OnClickListener() { 
    @Override 
    public void onClick(View v) { 
     indicatorRatingBar.setIsIndicator(false); 
     indicatorRatingBar.setRating(5); 
     indicatorRatingBar.setIsIndicator(true); 
    } 
}); 

評価バーがすべてで更新されません。私はそれが指標の評価バーなので、わからないのですか?

インジケータスタイルで設定されたレーティングバーで正しく動作させるにはどうすればよいですか?

答えて

1

実際に試行錯誤して答えが見つかりました。私はそれが変更されたとして無効にするビューを呼び出す必要があり、自動的に無効にしません。

indicatorRatingBar = (RatingBar) findViewById(R.id.ratingBar); 
button.setOnClickListener(new View.OnClickListener() { 
    @Override 
    public void onClick(View v) { 
     indicatorRatingBar.setRating(5); 
     indicatorRatingBar.invalidate(); 
     indicatorRatingBar.setIsIndicator(true); 
    } 
}); 
-1

indicatorRatingBar.setRating(5.0f); 
+0

いやに変更し、それを。これは違いはありません。 – Simon

関連する問題