Android RatingBar

末鹿安然 提交于 2019-12-10 11:41:31

问题


I'm new to android development
I need to create a RatingBar that shows rating according to Application details .
My App calculate a value according to user input and it will be shown in RatingBar .
That bar only shows the value (eg. 4/5 stars ) according to the calculated value
I need to create it that users can't change RatingBar's value directly .They only enter the input and that input calculate some value and that value need to be displayed in RatingBar.

Can you please help me to do this? This is the only way than I can think of using RatingBar (according to my knowledge).


回答1:


Try this out.I think this will solve your problem

This is java code

RatingBar ratingBar = (RatingBar)findViewById(R.id.ratingBar1);
ratingBar.setOnTouchListener(new OnTouchListener() {
        public boolean onTouch(View v, MotionEvent event) {
            return true;
        }
    });

XML code

<RatingBar

         android:id="@+id/ratingBar1"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content" 
         android:numStars="5"
         android:progress="30"
         android:clickable="false"     
         android:focusableInTouchMode="false"    
         android:focusable="false"

        />



回答2:


If You Need to restrict the user to manually alter the rating bar you need to apply onTouchListener on rating bar instance and return true




回答3:


Try isIndicator attribute. If you set true, users won't be able to change the value by touching the RatingBar.

<RatingBar
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:isIndicator="true" />


来源:https://stackoverflow.com/questions/18252099/android-ratingbar

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!