开发者

android - How to set the Rating bar is non clickable and touchable in HTC mobile

My application have rating bars. I want to set the Rating bar is non-click able and no-touchable. For this i added the following code in xml file of each rating bar.

It is working in samsung开发者_如何学Python galaxy Apollo GT-i5801. But it is not working in the HTC mobile. Why?

xml code

android:clickable="false"     
android:focusableInTouchMode="false"    
android:focusable="false"

thanks


You could also set the RatingBar as indicator from the xml with the following:

android:isIndicator="true"


This is it write this code in your setOnRatingBarChangeListener

ratingaddrate.setIsIndicator(true);

Update :

You can use this example in your XML

android:isIndicator="true"

also add this line to the Code

ratingBar.setFocusable(false);


Do not set enabled to false as this will dim the control. What you want to do is override the on touch listener like this:

import android.view.View.OnTouchListener;

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

So basically you intercept the touch and do nothing with it

Also add the following code too to block trackball rollovers

ratingBar.setFocusable(false);


Add style="?android:attr/ratingBarStyleIndicator" into your layout
For example

<RatingBar
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/review_star"
        style="?android:attr/ratingBarStyleIndicator"
        android:scaleX=".5"
        android:rating="3.5"
        android:scaleY=".5"
        android:transformPivotX="0dp"
        android:transformPivotY="0dp"
        android:max="5"/>
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜