Có ai biết nếu có thể làm cho RatingBar chuyển từ phải sang trái thay vì từ trái sang phải hoặc có ý tưởng cách thực hiện?Có thể thay đổi hướng RatingBar không?
Trả lời
Bạn cần phải tùy chỉnh RatingBar
..
Tuy nhiên bạn chỉ phải chơi thủ đoạn với hiển thị hình ảnh RatingBar
& sau đó một số loại tính toán ngược lại.
Thủ thuật sẽ hiển thị ngược Hình ảnh trong RatingBar .. trao đổi hình ảnh đã chọn và không được chọn trong RatingBar.
Cho phép người dùng xếp hạng trên RatingBar
. Bạn phải hoán đổi các phép tính đã chọn và không được chọn. Ý tôi là bạn phải tính toán ngược lại.
Hoàn thành Ví dụ hoạt động của tùy chỉnh RatingBar
trên số StackOverflow chỉ được trả lời bởi tôi.
Tải RatingBar
biểu tượng từ đây: http://developer.android.com/guide/practices/ui_guidelines/icon_design.html
Bạn có thể sử dụng android:rotation="180"
trong Ratingbar của bạn để xoay nó tôi được sử dụng theo cách này trên tôi Ratingbars read-only, tôi không biết nếu điều này sẽ ảnh hưởng đến tương tác với Ratingbar.
sau đó bạn cũng nên xoay drawables trong trình soạn thảo đồ họa mà không phải là dễ dàng hơn sau đó chỉ cần thiết lập số lượng đảo ngược sao –
Có, 'android: rotationY = 180' hoạt động như một nét duyên dáng .. . –
Sử dụng thuộc tính android:scaleX="-1"
HOẶC
package com.example.selection;
import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Matrix;
import android.util.AttributeSet;
import android.view.MotionEvent;
import android.widget.RatingBar;
public class InvertRatingBar extends RatingBar {
public InvertRatingBar(Context context) {
super(context);
}
public InvertRatingBar(Context context, AttributeSet attrs) {
super(context, attrs);
}
public InvertRatingBar(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
}
@Override
public boolean onTouchEvent(MotionEvent event) {
int width = this.getMeasuredWidth();
event.setLocation(width - event.getX(), event.getY());
return super.onTouchEvent(event);
}
@Override
protected synchronized void onDraw(Canvas canvas) {
int width = this.getMeasuredWidth();
Matrix matrix = canvas.getMatrix();
matrix.preTranslate(width, 0);
matrix.preScale(-1.f, 1);
canvas.setMatrix(matrix);
super.onDraw(canvas);
}
}
- 1. Capture RatingBar Nhấp vào
- 2. Làm thế nào để thay đổi hình ảnh ngôi sao của RatingBar?
- 3. Meteor.userId có thể thay đổi
- 4. tốc chuyển hướng không thay đổi req.url
- 5. Có thể ngăn thay đổi định hướng iPhone/iPad trong trình duyệt không?
- 6. Thay đổi hướng chuyển đổi jQuery Mobile
- 7. Thay đổi hướng trong Honeycomb
- 8. Thay đổi Chiều cao UITableViewCell về Thay đổi Định hướng
- 9. Có hướng dẫn cpu thay đổi và sao chép có thể được truy cập từ C#?
- 10. Thay đổi bố cục Xml khi thay đổi hướng
- 11. Thùng chứa không thay đổi có nội dung có thể thay đổi
- 12. Cột có thể thay đổi kích thước
- 13. Jfreechart: Có thể thay đổi màu của thanh không?
- 14. Thay đổi trang có thể thay đổi trang gọi lại
- 15. Không thể thay đổi og_type
- 16. không thể thay đổi java.io.tmpdir
- 17. Chuyển đổi bản đồ có thể biến đổi thành bản đồ không thể thay đổi
- 18. FragmentPagerAdapter không tạo lại Fragments về thay đổi định hướng?
- 19. Biến có thể thay đổi và Bộ sưu tập có thể thay đổi
- 20. .htaccess chuyển hướng mà không thay đổi thanh địa chỉ
- 21. Thay đổi hướng trong thời gian chạy
- 22. Phát hiện xem thiết bị có thể thay đổi hướng trong JavaScript
- 23. jQuery UI có thể thay đổi kích thước - hướng hoạt động
- 24. vô hiệu xếp hạng trên RatingBar
- 25. AngularJS xem không thay đổi khi điều hướng liên kết
- 26. showSoftInput không hoạt động sau khi thay đổi hướng
- 27. .htaccess: Chuyển hướng mà không thay đổi url
- 28. Không thay đổi màu chữ trong thanh điều hướng Bootstrap
- 29. Cách thay đổi hướng video cho AVCaptureVideoDataOutput
- 30. Scala: Chứa các bộ có thể thay đổi và không thay đổi
Cảm ơn. Tôi thực sự nhảy có một cách dễ dàng hơn ... –