আপনি যখন ব্যবহার করেন android:background
, আপনি অনেকগুলি স্টাইলিং প্রতিস্থাপন করছেন এবং খালি রঙের সাথে একটি বোতামটি দেখতে এবং অনুভব করছেন।
আপডেট করুন: হিসাবে সংস্করণ 23.0.0 মুক্তি এর AppCompat , একটি নতুন Widget.AppCompat.Button.Colored
শৈলী যেখানে ব্যবহার আপনার থিমের colorButtonNormal
অক্ষম রঙের জন্য এবংcolorAccent
সক্রিয় রঙের জন্য।
এটি আপনাকে সরাসরি আপনার বোতামে এটি প্রয়োগ করতে দেয়
<Button
...
style="@style/Widget.AppCompat.Button.Colored" />
আপনার যদি কাস্টম দরকার হয় colorButtonNormal
বা colorAccent
, আপনি এই প্রো-টিপ এবং বোতামে বর্ণিত ThemeOverlay
হিসাবে ব্যবহার করতে পারেন ।android:theme
পূর্ববর্তী উত্তর
আপনি আপনার পটভূমির জন্য আপনার ভি 21 ডিরেক্টরিতে একটি অঙ্কনযোগ্য ব্যবহার করতে পারেন যেমন:
<?xml version="1.0" encoding="utf-8"?>
<ripple xmlns:android="http://schemas.android.com/apk/res/android"
android:color="?attr/colorControlHighlight">
<item android:drawable="?attr/colorPrimary"/>
</ripple>
এটি আপনার পটভূমির রঙ ?attr/colorPrimary
ডিফল্ট ব্যবহার করে ডিফল্ট রিপল অ্যানিমেশনটি নিশ্চিত করবে?attr/colorControlHighlight
(যা আপনি চাইলে আপনার থিমেও সেট করতে পারেন)।
দ্রষ্টব্য: আপনাকে ভি 21 এর চেয়ে কম কাস্টম সিলেক্টর তৈরি করতে হবে:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@color/primaryPressed" android:state_pressed="true"/>
<item android:drawable="@color/primaryFocused" android:state_focused="true"/>
<item android:drawable="@color/primary"/>
</selector>
ধরে নিই আপনার ডিফল্ট, চাপযুক্ত এবং ফোকাসযুক্ত অবস্থার জন্য কিছু রঙ রয়েছে। ব্যক্তিগতভাবে, আমি নির্বাচিত হওয়ার মধ্য দিয়ে একটি রিপল মাঝের স্ক্রিনশট নিয়েছিলাম এবং সেখান থেকে প্রাথমিক / কেন্দ্রীভূত রাষ্ট্রটি টানতে পারি।