আমি কাস্টম বোতামটি তৈরি করতে চাই এবং এটির বৃত্ত হওয়া আমার প্রয়োজন। আমি কীভাবে একটি বৃত্ত বোতাম তৈরি করতে পারি? আমি মনে করি না যে ড্র 9 প্যাচ দিয়ে সম্ভব হবে।
এছাড়াও কাস্টম বোতাম কীভাবে বানাতে হয় তাও জানি না!
তোমার কি কোন পরামর্শ আছে?
আমি কাস্টম বোতামটি তৈরি করতে চাই এবং এটির বৃত্ত হওয়া আমার প্রয়োজন। আমি কীভাবে একটি বৃত্ত বোতাম তৈরি করতে পারি? আমি মনে করি না যে ড্র 9 প্যাচ দিয়ে সম্ভব হবে।
এছাড়াও কাস্টম বোতাম কীভাবে বানাতে হয় তাও জানি না!
তোমার কি কোন পরামর্শ আছে?
উত্তর:
এক্সএমএল এর মতো অঙ্কনযোগ্য ব্যবহার করুন:
নিম্নলিখিত বিষয়বস্তু সংরক্ষণ round_button.xml
মধ্যে drawable
ফোল্ডারের
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="false">
<shape android:shape="oval">
<solid android:color="#fa09ad"/>
</shape>
</item>
<item android:state_pressed="true">
<shape android:shape="oval">
<solid android:color="#c20586"/>
</shape>
</item>
</selector>
অ্যান্ড্রয়েড উপাদান প্রভাব: যদিও FloatingActionButton
একটি ভাল বিকল্প, আপনি এটি XML নির্বাচক ব্যবহার না করতে চান তাহলে, একটি ফোল্ডার তৈরি drawable-v21
মধ্যে res
এবং অন্য সংরক্ষণ round_button.xml
নিম্নলিখিত XML সেখানে
<?xml version="1.0" encoding="utf-8"?>
<ripple xmlns:android="http://schemas.android.com/apk/res/android"
android:color="#c20586">
<item>
<shape android:shape="oval">
<solid android:color="#fa09ad"/>
</shape>
</item>
</ripple>
এবং এটির মতো xML এর পটভূমি হিসাবে সেট করুন Button
:
<Button
android:layout_width="50dp"
android:layout_height="50dp"
android:background="@drawable/round_button"
android:gravity="center_vertical|center_horizontal"
android:text="hello"
android:textColor="#fff" />
গুরুত্বপূর্ণ:
কাস্টম অ্যান্ড্রয়েড বোতামের জন্য অ্যাংরিটুল
আপনি এই সরঞ্জাম সাইটের সাহায্যে যেকোন প্রকারের কাস্টম অ্যান্ড্রয়েড বোতাম তৈরি করতে পারেন ... আমি এই সরঞ্জামসাইটটি দিয়ে বৃত্তাকার এবং কোণার সাথে স্কোয়ার বোতামটি তৈরি করি .. এটি দেখার জন্য আমি আপনাকে সাহায্য করব
অফিসিয়াল উপাদান উপাদান লাইব্রেরিতে আপনি প্রয়োগটি ব্যবহার করতে পারেন MaterialButton
aWidget.MaterialComponents.Button.Icon
স্টাইল ।
কিছুটা এইরকম:
<com.google.android.material.button.MaterialButton
android:layout_width="48dp"
android:layout_height="48dp"
style="@style/Widget.MaterialComponents.Button.Icon"
app:icon="@drawable/ic_add"
app:iconSize="24dp"
app:iconPadding="0dp"
android:insetLeft="0dp"
android:insetTop="0dp"
android:insetRight="0dp"
android:insetBottom="0dp"
app:shapeAppearanceOverlay="@style/ShapeAppearanceOverlay.MyApp.Button.Rounded"
/>
বর্তমানে app:iconPadding="0dp"
, android:insetLeft
, android:insetTop
, android:insetRight
, android:insetBottom
বৈশিষ্ট্যাবলী বাটন অতিরিক্ত প্যাডিং স্থান এড়ানো আইকন কেন্দ্র প্রয়োজন।
app:shapeAppearanceOverlay
বৃত্তাকার কোণ পেতে বৈশিষ্ট্যটি ব্যবহার করুন । এই ক্ষেত্রে আপনার একটি বৃত্ত থাকবে।
<style name="ShapeAppearanceOverlay.MyApp.Button.Rounded" parent="">
<item name="cornerFamily">rounded</item>
<item name="cornerSize">50%</item>
</style>
চূড়ান্ত ফলাফল:
app:iconPadding="0dp"
আইকনটি কেন্দ্রিক রয়েছে তা নিশ্চিত করার জন্য প্রয়োজনীয়তার বিষয়টি তুলে ধরা th আমি এটি না পাওয়া পর্যন্ত আমি একগুচ্ছ সময়ের চেষ্টা কেন্দ্র পোড়া করেছি। দেখে মনে হচ্ছে এটি অ্যাপ্লিকেশন: আইকনগ্র্যাভিটির একটি "কেন্দ্র" মান অনুপস্থিত।
আপনি যদি ভেক্টরড্রায়েবল এবং কনস্ট্রেন্টলয়েট ব্যবহার করতে চান তবে
<FrameLayout
android:id="@+id/ok_button"
android:layout_width="100dp"
android:layout_height="100dp"
android:foreground="?attr/selectableItemBackgroundBorderless"
android:background="@drawable/circle_button">
<android.support.constraint.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<ImageView
android:id="@+id/icon_of_button"
android:layout_width="32dp"
android:layout_height="32dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
app:srcCompat="@drawable/ic_thumbs_up"/>
<TextView
android:id="@+id/text_of_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintTop_toBottomOf="@+id/icon_of_button"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
android:layout_marginTop="5dp"
android:textColor="@android:color/white"
android:text="ok"
/>
</android.support.constraint.ConstraintLayout>
</FrameLayout>
বৃত্তের পটভূমি: वृत्त_বাটন.এক্সএমএল
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<corners android:radius="1000dp" />
<solid android:color="#41ba7a" />
<stroke
android:width="2dip"
android:color="#03ae3c" />
<padding
android:bottom="4dp"
android:left="4dp"
android:right="4dp"
android:top="4dp" />
</shape>
কোনও এফএবি খুঁজছেন বোতামের জন্য এই স্টাইলটিতে MaterialButton
:
<com.google.android.material.button.MaterialButton
style="@style/Widget.MaterialComponents.ExtendedFloatingActionButton"
app:cornerRadius="28dp"
android:layout_width="56dp"
android:layout_height="56dp"
android:text="1" />
ফলাফল:
আপনি যদি আকার পরিবর্তন করেন তবে বোতামের আকারের অর্ধেকটি ব্যবহার করতে সতর্ক হন app:cornerRadius
।