Fondo circular de ProgressBar: Android Xamarin
Tengo una barra de progreso circular y funciona bien. Pero el fondo no aparece, aunque he dado forma para "fondo" en el archivo xml dibujable y progreso también comienza desde el lado derecho del círculo (como se muestra en la figura ). Quiero que lo haga desde la cima.
- Monodroid - el nuevo proyecto de plantilla sin tocar no se puede ejecutar en el emulador de Android
- ¿Cómo guardar una imagen en almacenamiento interno y luego mostrarla en otra actividad?
- Autenticación Monodroid WebView para SSRS
- No se pueden analizar los datos xml a listview en xamarin android
- Simulaciones de desarrollo de Android de MonoDroid
Aquí está mi código:
<ProgressBar android:id="@+id/progressBarToday" style="?android:attr/progressBarStyleHorizontal" android:layout_width="50dip" android:layout_height="50dip" android:layout_centerInParent="true" android:indeterminate="false" android:max="60" android:progress="0" android:progressDrawable="@drawable/progressbar" />
Progressbar.xml
<?xml version="1.0" encoding="UTF-8" ?> <layer-list xmlns:android="http://schemas.android.com/apk/res/android"> <item android:id="@android:id/background"> <---not working! <shape android:innerRadiusRatio="3" android:shape="ring" android:thicknessRatio="7.0"> <solid android:color="@color/red"/> </shape> </item> <item android:id="@android:id/progress"> <shape android:innerRadiusRatio="3" android:shape="ring" android:thicknessRatio="7.0"> <solid android:color="@color/blue"/> </shape> </item> </layer-list>
Utilizo el siguiente código para establecer el progreso:
ProgressBar pb = (ProgressBar)FindViewById (Resource.Id.progressBarToday); _progressBar.Progress = _progressCount;
¿Por qué el fondo no aparece? Y ¿Cómo puedo hacer que el progreso empiece desde arriba?
Cualquier persona por favor ayuda, Gracias.
- Xamarin y código c ++
- Cómo detener un proceso de System.Diagnostics.Process y obtener las estadísticas al final
- ¿Cómo detectar los recursos no utilizados en Xamarin.Android?
- Forzar EditText para perder el enfoque cuando se vuelve a presionar
- Xamarin Archivo de recursos Android no encontrado
- Error MSB4185: "System.Globalization.CultureInfo" no se ha habilitado para la ejecución
- Xamarin.Android android: versionCode android: versionName - Desde Jenkins Build Server
- error en el cambio de tipo de letra en xamarin para android
Debe agregar el atributo siguiente al elemento de fondo:
android:useLevel="false"
Al igual que:
<?xml version="1.0" encoding="UTF-8" ?> <layer-list xmlns:android="http://schemas.android.com/apk/res/android"> <item android:id="@android:id/background"> <---not working! <shape android:innerRadiusRatio="3" android:shape="ring" android:useLevel="false" android:thicknessRatio="7.0"> <solid android:color="@color/red"/> </shape> </item> <item android:id="@android:id/progress"> <shape android:innerRadiusRatio="3" android:shape="ring" android:thicknessRatio="7.0"> <solid android:color="@color/blue"/> </shape> </item> </layer-list>
Para comenzar desde la parte superior, puede utilizar "girar
<item android:id="@android:id/progress"> <rotate android:fromDegrees="-90" android:toDegrees="-90"> <shape android:innerRadiusRatio="3" android:shape="ring" android:thicknessRatio="7.0" android:useLevel="true"> <solid android:color="@color/blue"/> </shape> </rotate> </item>
Lo tengo trabajando
<ProgressBar android:id="@+id/progressBarToday" style="?android:attr/progressBarStyleHorizontal" android:layout_width="50dip" android:layout_height="50dip" android:layout_centerInParent="true" android:indeterminate="false" android:max="60" android:progress="0" android:background="@drawable/bg" // here is working background android:progressDrawable="@drawable/progressbar" />
Sí. Estoy demasiado tarde, pero esto puede ayudar a otros. Este código devolverá una imagen de mapa de bits y se puede utilizar en un ImageView o ImageButton.
private Bitmap progressBar(int progress) { Bitmap bitmap = Bitmap.createBitmap(300, 300, Bitmap.Config.ARGB_8888); Canvas canvas = new Canvas(bitmap); Paint paint = new Paint(); paint.setColor(Color.parseColor("#FF0000")); paint.setStrokeWidth(20); paint.setAntiAlias(true); paint.setStyle(Paint.Style.FILL_AND_STROKE); canvas.drawCircle(150, 150, 140, paint); paint.setColor(Color.parseColor("#01aa01")); paint.setStrokeWidth(16); paint.setStyle(Paint.Style.STROKE); final RectF oval = new RectF(); paint.setStyle(Paint.Style.FILL); oval.set(10, 10, 290, 290); canvas.drawArc(oval, 270, (progress * 360) / 100, true, paint); paint.setStrokeWidth(1); paint.setTextSize(100); paint.setTextAlign(Align.CENTER); paint.setColor(Color.parseColor("#ffffff")); canvas.drawText("" + progress, 150, 150 + (paint.getTextSize() / 3), paint); return bitmap; }
- Android WebView addJavascriptInterface no funciona si la vista web se crea en la devolución de llamada de WebChromeClient # onCreateWindow
- Error de compilación referenciando archivo build.xml y proguard: "null returned: 1"