Ich versuche tatsächlich, farbige Symbole in meiner App zu verwenden. Ich habe das offizielle Material Design Icon Pack von here heruntergeladen. Jetzt sind alle Symbole in diesem Paket entweder weiß, grau oder schwarz. Aber ich möchte, dass die Icons eine andere Farbe haben. Etwas wie die Symbole auf der linken Seite in this image. Die Telefon- und Mail-Symbole sind blau. Wie kann ich das erreichen?Ist es möglich, Material Design-Symbolfarbe von Xml in Android zu ändern?
Antwort
Es ist eine .png-Datei. Es gibt viele Bildbearbeiter da draußen. Sie müssen nur die Teile füllen
Sie die TintImageView
innerhalb der appcompat Support-Bibliothek verwenden und dann färben/Färben der Imageview ist einfach durch die android:backgroundTint
Aufruf der Imageview in einer Farbe tönen.
Xml
<TintImageView
android:layout_width=""
android:layout_height=""
android:src=""
android:backgroundTint="@color/green"/>
oder
<ImageView
android:tint="the_color_you_want"/>
Programatically
ImageView yourImageView = findViewById(...) yourImageView.setColorFilter(Context.getColor(your_color_here))
So ist die oben xml die Imageview tönen grün zu färben, bedeutet, dass es jedes Pixel des Imageview kolorieren wird, die grün sichtbar sind.
wenn ich das Zeichen ändern will links | rechts-Symbol Farbton für EditText TextView gibt es keine Möglichkeit, das zu tun, was ich fühle! * android: backgroundTint = "@ android: farbe/holo_blue_bright" * funktioniert nicht !! –
Da die Symboldatei im PNG-Format vorliegt, sollten Sie die Farbe mit dem Werkzeug ändern, mit dem Sie das Symbol erstellt haben. und fügen Sie es mithilfe von ImageAsset in das Projekt ein.
Ich habe die Farbe nicht selbst erstellt. Ich verwende die Icons aus dem offiziellen Icon-Paket von Google. Ich möchte auch wissen, ob es möglich ist, es innerhalb des Codes selbst zu tun, – Akshay
und Sie können es nicht ändern, indem Sie Code verwenden. aber diese URL wird dir sicherlich helfen. http://goo.gl/a82Peu – satyapol
Ich suchte nach der gleichen Sache, aber um es dynamisch im Code zu ändern. Ich hoffe, das hilft jemandem, der das Gleiche sucht.
ein Image für das Symbol Erstellen und setColorFilter auf dieser Ansicht verwenden.
ImageView imageViewIcon = (ImageView) listItem.findViewById(R.id.imageViewIcon);
imageViewIcon.setColorFilter(getContext().getResources().getColor(R.color.blue));
es funktionierte für mich !! – Nischal
Für Iconfarbe
<ImageButton
android:layout_width="your value"
android:layout_height="your value"
/* and so on ... */
android:tint="YourColor"
/>
Hinweis versuchen zu ändern: die Tönung Farbe ontop des Bildes gemalt, keine Ersatzfarbe. Tint #80ff0000
auf einem schwarzen Bild gibt Ihnen 50% rot auf schwarz, nicht 50% rot auf dem Hintergrund. I.e. Dies entspricht nicht den iOS-Vorlagenbildern.
Willkommen bei Stack Overflow! Bitte bedenken Sie, dass Sie Ihren Beitrag bearbeiten müssen, um weitere Erklärungen dazu zu erhalten, was Ihr Code tut und warum es das Problem löst. Eine Antwort, die meist nur Code enthält (auch wenn es funktioniert), hilft dem OP normalerweise nicht, sein Problem zu verstehen. Es wird auch empfohlen, dass Sie keine Antwort posten, wenn es nur eine Vermutung ist. Eine gute Antwort wird einen plausiblen Grund dafür haben, warum sie das Problem des OP lösen könnte. – SuperBiasedMan
<vector android:height="48dp" android:viewportHeight="24.0"
android:viewportWidth="24.0" android:width="48dp" xmlns:android="http://schemas.android.com/apk/res/android">
<path android:fillColor="#ca0f0f" android:pathData="M3,5v14c0,1.1 0.89,2 2,2h14c1.1,0 2,-0.9 2,-2V5c0,-1.1 -0.9,-2 -2,-2H5c-1.11,0 -2,0.9 -2,2zm12,4c0,1.66 -1.34,3 -3,3s-3,-1.34 -3,-3 1.34,-3 3,-3 3,1.34 3,3zm-9,8c0,-2 4,-3.1 6,-3.1s6,1.1 6,3.1v1H6v-1z"/>
</vector>
Sie Farbe ändern, indem Sie android Wechsel: fillColor = "# ca0f0f"
zu Hinzufügen was Murali sagte, mehrere Drawables mit unterschiedlichen Füllfarben machen. Dann
wenn nötig, in dem Code:
imageView.setImageResource(R.drawable.drawable_with_different_color)
NICHT: imageView.setBackgroundResource()
Wenn das Symbol in 200 verschiedenen Farben angezeigt werden soll, werden dann 200 Symbole mit unterschiedlichen Farben in das Zeichenfeld eingefügt? –
Viele Alternativen hier bereits in diesem Thread.Vielleicht kann ich noch einen für hinzufügen, wer es bequem findet:
Sie auch die Auslosungs Klasse verwenden können, wobei der Code als
Resources res = getResources();
Drawable drawable = res.getDrawable(R.drawable.ic_play_circle_filled);
drawable = DrawableCompat.wrap(drawable);
DrawableCompat.setTint(drawable, getResources().getColor(R.color.colorPrimary));
folgt Obwohl die oben den Trick für mich getan hat, aber für meinen Anwendungsfall suggicient android:tint
zu verwenden war, wie
<ImageButton
android:layout_width="YourValue"
android:layout_height="YourValue"
...
android:tint="YourColor" // this line do the magic
/>
Ja in XML-Material Symbol Farbe zu ändern, ist es möglich, und es ist einfach, diese Bibliothek: https://github.com/jrvansuita/IconHandler
Sie können dies leicht nennen:
Icon.on(yourImageView).color(R.color.your_color).icon(R.mipmap.your_icon).put();
- 1. Android ändern Material Höhenschattenfarbe
- 2. Ist es möglich, Material Design vor Android 5 zu verwenden?
- 3. Ist es möglich, Ansichten ohne XML in Android zu erstellen?
- 4. Angular Material mdTabs: Ist es möglich, vertikale Tabs zu haben?
- 5. Ist es möglich, WebView von JavaFX in Chrome zu ändern
- 6. Ist es möglich, 2D-Spiele in Android Studio zu entwickeln?
- 7. Ist es möglich, Datentypen von String zu ändern Datum
- 8. ist es möglich,
- 9. Ist es möglich, .so Datei zu bearbeiten/zu ändern?
- 10. Ist es möglich, den linken Drawable einer Schaltfläche in Selector xml zu ändern?
- 11. Ist es möglich, das Verhalten von len() zu ändern?
- 12. Ist es möglich, die Verzeichnisstruktur von Yeoman zu ändern?
- 13. Ist es möglich, den billingDayOfMonth von Braintree-Abonnements zu ändern?
- 14. Ist es möglich, das Startbild von Default.png programmgesteuert zu ändern?
- 15. Ist es möglich, __repr__ von Wahr als Falsch zu ändern?
- 16. Ist es möglich, meine SQL Replikationsdefinition in XML zu exportieren?
- 17. Ist es möglich, Werte in Windows-Dienst zu ändern - in Ini-Datei oder XML?
- 18. Ist es möglich, Symbole in Visual Studio 2015 zu ändern?
- 19. Ist es möglich, eine Zeichenkette in C zu ändern?
- 20. Ist es möglich, C/C++ in Android Studio zu debuggen?
- 21. Ist es möglich, Methodenfunktionshandler in MATLAB classdef zu ändern
- 22. Ist es möglich, eine Variable in Postman zu ändern
- 23. ist es möglich, eine Textschrift in Stil zu ändern
- 24. Ist es möglich, die erste Abbruchbedingung in BGL zu ändern?
- 25. Ist es möglich, Variablen in JavaScript zu ändern? (Node.js)
- 26. Ist es in Realm möglich, den Primärschlüssel später zu ändern?
- 27. Ist es möglich, die Konsolenschriftgröße in IntelliJ IDEA zu ändern
- 28. Ist es möglich, Farbe pro Zeile in NSTextField zu ändern?
- 29. Ist es möglich, Schriftart und -größe in UITableView zu ändern?
- 30. Ist es möglich, die automatische Formatverknüpfung in Netbeans zu ändern?
Haben Sie versucht, so etwas wie android: background = "@ color/rot"? – 10101010
Da die Symboldatei im PNG-Format vorliegt, sollten Sie die Farbe mit dem Werkzeug ändern, mit dem Sie das Symbol erstellt haben. und fügen Sie es mithilfe von ImageAsset in das Projekt ein. – satyapol
@rajatIIT Android: Hintergrund macht eine rote Box um das Symbol, und das Symbol bleibt immer noch grau in der Farbe. – Akshay