Frage android - Wie man die Bewertungsleiste einstellt, ist in HTC mobile nicht anklickbar und anfassbar


Meine Anwendung hat Bewertungsbalken. Ich möchte festlegen, dass die Bewertungsleiste nicht klickbar und nicht anfassbar ist. Dazu habe ich den folgenden Code hinzugefügt xml Datei jeder Bewertungsleiste.

Es arbeitet in Samsung Galaxy Apollo GT-i5801. Aber es funktioniert nicht im HTC Handy. Warum?

XML-Code

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

Vielen Dank


74
2017-08-22 11:44


Ursprung


Antworten:


Sie könnten auch die RatingBar als Indikator aus dem XML-Code mit den folgenden setzen:

android:isIndicator="true"

274
2017-11-23 13:48



Setzen Sie "enabled" nicht auf "false", da dies das Steuerelement verdunkelt. Was Sie tun möchten, ist den On-Touch-Listener wie folgt zu überschreiben:

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;
        }
    });

Also im Grunde nehmen Sie die Berührung ab und tun nichts damit

Fügen Sie auch den folgenden Code hinzu, um Trackball-Rollover zu blockieren

ratingBar.setFocusable(false);

16
2017-11-21 14:41



Schreiben Sie diesen Code in Ihren setOnRatingBarChangeListener

ratingaddrate.setIsIndicator(true);

Aktualisierung: 

Sie können dieses Beispiel in Ihrem XML verwenden

android:isIndicator="true"

auch hinzufügen diese Linie zum Kodex

ratingBar.setFocusable(false);

15
2017-08-30 07:15