অ্যান্ড্রয়েড মেটেরিয়াল ডিজাইনের বোতাম স্টাইলগুলি


308

আমি উপাদান নকশা জন্য বোতাম শৈলীতে বিভ্রান্ত করছি। আমি সংযুক্ত লিঙ্কে রঙিন উত্সাহিত বোতামগুলি পেতে চাই, উপলব্ধ শৈলী আছে বা আমি তাদের সংজ্ঞায়িত করা প্রয়োজন?

http://www.google.com/design/spec/components/buttons.html#buttons-usage

আমি ডিফল্ট বোতামের শৈলীগুলি খুঁজে পাইনি।

উদাহরণ:

 <Button style="@style/PrimaryButton"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Calculate"
    android:id="@+id/button3"
    android:layout_below="@+id/editText5"
    android:layout_alignEnd="@+id/editText5"
    android:enabled="true" />

আমি যুক্ত করে বোতামটির পটভূমি রঙ পরিবর্তন করার চেষ্টা করি

    android:background="@color/primary"

সমস্ত স্টাইল চলে যায়, যেমন টাচ অ্যানিমেশন, ছায়া, বৃত্তাকার কোণ ইত্যাদি


আমি এইটি কাস্টমাইজড বোতামটিতে সবচেয়ে সহায়ক হতে পারি রাগানোটুলস
খারাক

উত্তর:


750

আমি প্রদত্ত অন্য উত্তরগুলির কোনও ব্যবহার না করায় আমি আমার উত্তর যুক্ত করব।

সাপোর্ট লাইব্রেরি ভি 7 এর সাহায্যে সমস্ত স্টাইলগুলি ইতিমধ্যে সংজ্ঞায়িত এবং ব্যবহারের জন্য প্রস্তুত, স্ট্যান্ডার্ড বোতামগুলির জন্য, এই সমস্ত স্টাইল উপলব্ধ:

style="@style/Widget.AppCompat.Button"
style="@style/Widget.AppCompat.Button.Colored"
style="@style/Widget.AppCompat.Button.Borderless"
style="@style/Widget.AppCompat.Button.Borderless.Colored"

Widget.AppCompat.Button: এখানে চিত্র বর্ণনা লিখুন

Widget.AppCompat.Button.Colored: এখানে চিত্র বর্ণনা লিখুন

Widget.AppCompat.Button.Borderless এখানে চিত্র বর্ণনা লিখুন

Widget.AppCompat.Button.Borderless.Colored: এখানে চিত্র বর্ণনা লিখুন


প্রশ্নের উত্তর দেওয়ার জন্য, ব্যবহার করার স্টাইলটি তাই

<Button style="@style/Widget.AppCompat.Button.Colored"
.......
.......
.......
android:text="Button"/>

কীভাবে রঙ বদলাবেন

পুরো অ্যাপটির জন্য:

সমস্ত ইউআই নিয়ন্ত্রণের রঙ (কেবলমাত্র বোতামগুলি নয়, ভাসমান অ্যাকশন বোতামগুলি, চেকবক্সগুলি ইত্যাদি) এখানে বর্ণিত colorAccentহিসাবে বৈশিষ্ট্য দ্বারা পরিচালিত হয় । আপনি এই স্টাইলটি সংশোধন করতে পারেন এবং আপনার থিম সংজ্ঞাতে নিজের রঙ প্রয়োগ করতে পারেন:

<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
    ...
    <item name="colorAccent">@color/Orange</item>
</style>

একটি নির্দিষ্ট বোতামের জন্য:

আপনার যদি কোনও নির্দিষ্ট বোতামের স্টাইল পরিবর্তন করতে হয় তবে আপনি উপরে বর্ণিত মূল শৈলীগুলির উত্তরাধিকার সূত্রে একটি নতুন শৈলীর সংজ্ঞা দিতে পারেন। নীচের উদাহরণে আমি কেবল পটভূমি এবং ফন্টের রঙগুলি পরিবর্তন করেছি:

<style name="AppTheme.Button" parent="Widget.AppCompat.Button.Colored">
    <item name="colorButtonNormal">@color/Red</item>
    <item name="android:textColor">@color/White</item>
</style>

তারপরে আপনার এই নতুন স্টাইলটি কেবল বোতামে প্রয়োগ করতে হবে:

android:theme="@style/AppTheme.Button"

কোনও বিন্যাসে একটি ডিফল্ট বোতাম নকশা সেট করতে, এই লাইনটি স্টাইলস.এক্সএমএল থিমটিতে যুক্ত করুন:

<item name="buttonStyle">@style/btn</item>

@style/btnআপনার বোতাম থিম কোথায় । এটি একটি নির্দিষ্ট থিম সহ একটি বিন্যাসে সমস্ত বোতামের জন্য বোতাম শৈলী সেট করে


6
আমি মনে করি এটি এখন পর্যন্ত এটি করার সর্বোত্তম উপায়।
xsorifc28

5
আপনি কি কিটক্যাট ডিভাইসে এটি পরীক্ষা করেছেন?
মাওহিং

14
colorButtonNormalঅ্যাট্রয়েড অ্যান্ড্রয়েড ৪.১.২ এ আমার জন্য কাজ করে না। মোটেও বোতামের রঙ সেট করতে পারে না (বোতামের android:backgroundউপাদানগুলির স্টাইলটি ভেঙে দেয়)।
কনস্ট্যান্টিন কনোপকো

2
@ YoannHercouet কোন অ্যান্ড্রয়েড সংস্করণে আপনি এই চিত্রগুলি করেছেন? আমার অ্যান্ড্রোতে 4.1.2 এবং 4.4.2 বোতামে স্টাইল = ".. অ্যাপকম্প্যাট.বটন" উত্থাপিত হয়নি।
গ্রজেগোর্জ দেব

5
@ কনপকো আপনি যদি আমার মতো হন তবে আপনি আমার পরিবর্তনের style=""পরিবর্তে Android:theme=""আমার জন্য সমস্যাটি স্থির করেছেন
জন স্নো

84

সিম্পল সলিউশন


পদক্ষেপ 1: সর্বশেষ সমর্থন লাইব্রেরি ব্যবহার করুন

compile 'com.android.support:appcompat-v7:25.2.0'

পদক্ষেপ 2: আপনার অভিভাবক ক্রিয়াকলাপ শ্রেণি হিসাবে অ্যাপকম্প্যাটঅ্যাক্টিভিটি ব্যবহার করুন

public class MainActivity extends AppCompatActivity

পদক্ষেপ 3: আপনার লেআউট এক্সএমএল ফাইলটিতে অ্যাপের নেমস্পেস ব্যবহার করুন

<RelativeLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

পদক্ষেপ 4: বোতামের পরিবর্তে অ্যাপকম্প্যাটবটন ব্যবহার করুন

<android.support.v7.widget.AppCompatButton
    android:id="@+id/buttonAwesome"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Awesome Button"
    android:textColor="@color/whatever_text_color_you_want"
    app:backgroundTint="@color/whatever_background_color_you_want"/>

এখানে চিত্র বর্ণনা লিখুন


7
আপনাকে নির্দিষ্ট করার দরকার নেই android.support.v7.widget.AppCompatButtonকারণ বিল্ড সরঞ্জাম স্বয়ংক্রিয়ভাবে এটি ব্যবহার করে যখন আপনি নির্দিষ্ট করেনButton
চিহ্নিত করুন

2
স্বয়ংক্রিয়ভাবে কাজ সক্ষম / অক্ষম করবে? বা এর জন্য আমাদের আবার শৈলী নির্দিষ্ট করা দরকার?
সুন্দরদীপ 1501

এটি আমার জন্য প্রাক-ললিপপের রাজ্য তালিকাটি সরিয়ে দেয়, ফলে কোনও ক্লিকের প্রভাব ছাড়াই একটি বোতাম তৈরি হয়
ফ্লোরিয়ান ওয়ালথার

অক্ষম রাষ্ট্রের textColorজন্য পাঠ্যের রঙকে ওভাররাইড করা বাদে অ্যান্ড্রয়েড পি-তে কাজ করার জন্য মনে হচ্ছে ।
l33t

@ সুন্দীপ ১50০১ Widget.MaterialComponents.Button.OutlinedButtonকমপক্ষে, ধূসরতে পরিবর্তিত হয়নি ।
ডাঃ জ্যাকি

66

যদি আমি আপনাকে সঠিকভাবে বুঝতে পারি তবে আপনি এই জাতীয় কিছু করতে চান:
এখানে চিত্র বর্ণনা লিখুন

এই ক্ষেত্রে, এটি ব্যবহারের জন্য পর্যাপ্ত পরিমাণে হওয়া উচিত:

<item name="android:colorButtonNormal">#2196f3</item>

বা 21 এরও কম API এর জন্য:

<item name="colorButtonNormal">#2196f3</item>

ম্যাটেরিয়াল থিম টিউটোরিয়াল ব্যবহার করা ছাড়াও

অ্যানিমেটেড বৈকল্পিক এখানে


1
@ অ্যান্ড্রয়েড ডেভেলপাররা নমুনাটি গিটহাবের দিকে ঠেলেছেন, মূল জিনিসটি এখানে রয়েছে - github.com/AlexKorovyansky/BueueRaisedButton/blob/master/app/src/… ,
অ্যালেক্সকোরোভিয়ানস্কি

আমি মনে করি আপনার পুরানো সংস্করণগুলির জন্য কমপ্যাট লাইব্রেরি ব্যবহার করতে হবে।
অ্যালেক্সকোরোভিয়ানস্কি

2
এটি হয় না তবে আপনি এপিআই 21 এবং উপরের ক্ষেত্রে এটি সেট করতে পারেন। আমি একটি উপায় খুঁজে পেয়েছি, তবে এটি করার সর্বোত্তম উপায় কী তা আমি জানি না।
অ্যান্ড্রয়েড বিকাশকারী

4
এই পদ্ধতির সাথে আমার কি একাধিক রঙ থাকতে পারে? মনে হচ্ছে এটি কেবল একবারে অনুমতি দেয়।
gerfmarquez

2
@gerfmarquez ইউ টি কে বিভিন্ন বোতামের জন্য বিভিন্ন স্টাইল থাকতে হবে
কিশোর_জে

39

আমি যা চাইছিলাম তা এখানেই পেয়েছি।

প্রথমে, একটি বোতাম তৈরি (ইন styles.xml):

<style name="Button">
    <item name="android:textColor">@color/white</item>
    <item name="android:padding">0dp</item>
    <item name="android:minWidth">88dp</item>
    <item name="android:minHeight">36dp</item>
    <item name="android:layout_margin">3dp</item>
    <item name="android:elevation">1dp</item>
    <item name="android:translationZ">1dp</item>
    <item name="android:background">@drawable/primary_round</item>
</style>

বাটনটির জন্য রিপল এবং ব্যাকগ্রাউন্ড, একটি অঙ্কনযোগ্য হিসাবে primary_round.xml:

<ripple xmlns:android="http://schemas.android.com/apk/res/android"
android:color="@color/primary_600">
  <item>
    <shape xmlns:android="http://schemas.android.com/apk/res/android">
        <corners android:radius="1dp" />
        <solid android:color="@color/primary" />
    </shape>
  </item>
</ripple>

এটি আমি খুঁজছিলাম যে রিপল প্রভাবটি যুক্ত করেছে।


3
কাঠামোর সম্পদের সাথে মিলে কোণার ব্যাসার্ধ 2 ডিপি হওয়া উচিত। অতিরিক্ত হিসাবে, অনুবাদZ এক্সএমএলে সেট করা উচিত নয় এবং সেখানে ডিফল্ট উচ্চতা, মিনিডউইথ, মিনিহাইট বা মার্জিনকে ওভাররাইড করার দরকার নেই।
অ্যালানভ

কোনও কাস্টম স্টাইল প্রয়োগ করা হলে ডিফল্ট মার্জিন 0 হয়ে যায়, কোনও কারণে বৈশিষ্ট্য উত্তরাধিকার সূত্রে প্রাপ্ত হচ্ছে না।
xsorifc28

3
আহ, আমি খেয়াল করি নি যে আপনি একটি পিতামাতার শৈলী মিস করছেন। আপনার প্যারেন্ট = "উইজেট.মেটারিয়াল। বাটন" যুক্ত করা উচিত বা সম্পূর্ণরূপে একটি কাস্টম স্টাইল তৈরি করা এড়িয়ে যাওয়া উচিত এবং কেবলমাত্র বোতামের পটভূমিটি সেট করা উচিত।
alanv

উহু! আমি জানতাম না যে বিদ্যমান আছে, এটি কোনও ডকুমেন্টেশনে চালিত হয়নি। আমি চেষ্টা করব।
xsorifc28

যদিও, আমি কাস্টম শৈলী ছাড়া এটি কীভাবে করব তা নিশ্চিত নই। আপনি আমাকে একটি উদাহরণ দেখাতে পারেন?
xsorifc28

33

নভেম্বরে 2018 এ অ্যান্ড্রয়েড মেটালিয়াল উপাদানগুলির স্থিতিশীল রিলিজের সাথে, গুগল উপাদান উপাদানগুলি নামস্থান android.support.designথেকে অন্য জায়গায় সরিয়ে নিয়েছে com.google.android.material
মেটেরিয়াল কম্পোনেন্ট লাইব্রেরি অ্যান্ড্রয়েডের ডিজাইন সহায়তা লাইব্রেরির প্রতিস্থাপন।

যোগ নির্ভরতা আপনার টু build.gradle:

dependencies { implementation com.google.android.material:material:1.0.0 }

তারপরে MaterialButtonআপনার লেআউটে এটি যুক্ত করুন:

<com.google.android.material.button.MaterialButton
        style="@style/Widget.MaterialComponents.Button.OutlinedButton" 
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/app_name"
        app:strokeColor="@color/colorAccent"
        app:strokeWidth="6dp"
        app:layout_constraintStart_toStartOf="parent"
        app:shapeAppearance="@style/MyShapeAppearance"
   />

আপনি এখানে পুরো ডকুমেন্টেশন এবং এপিআই এখানে চেক করতে পারেন

পটভূমির রঙ পরিবর্তন করতে আপনার কাছে 2 টি বিকল্প রয়েছে।

  1. backgroundTintবৈশিষ্ট্য ব্যবহার করে ।

কিছুটা এইরকম:

<style name="MyButtonStyle"
 parent="Widget.MaterialComponents.Button">
    <item name="backgroundTint">@color/button_selector</item>
    //..
</style>
  1. এটি আমার মতে সেরা বিকল্প হবে। আপনি যদি কোনও ডিফল্ট শৈলী থেকে কিছু থিমের বৈশিষ্ট্যগুলিকে ওভাররাইড করতে চান তবে আপনি নতুন materialThemeOverlayবৈশিষ্ট্যটি ব্যবহার করতে পারেন ।

কিছুটা এইরকম:

<style name="MyButtonStyle"
 parent="Widget.MaterialComponents.Button">
   <item name=“materialThemeOverlay”>@style/GreenButtonThemeOverlay</item>
</style>

<style name="GreenButtonThemeOverlay">
  <!-- For filled buttons, your theme's colorPrimary provides the default background color of the component --> 
  <item name="colorPrimary">@color/green</item>
</style>

বিকল্প # 2 এর জন্য প্রয়োজন 'com.google.android.material:material:1.1.0'.

এখানে চিত্র বর্ণনা লিখুনএখানে চিত্র বর্ণনা লিখুন

ওল্ড সাপোর্ট লাইব্রেরি:

নতুন সাপোর্ট লাইব্রেরি ২৮.০.০ সহ , ডিজাইন লাইব্রেরিতে এখন অন্তর্ভুক্ত রয়েছেMaterialButton

আপনি আমাদের লেআউট ফাইলে এই বোতামটি যুক্ত করতে পারেন:

<android.support.design.button.MaterialButton
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="YOUR TEXT"
    android:textSize="18sp"
    app:icon="@drawable/ic_android_white_24dp" />

ডিফল্টরূপে এই শ্রেণিটি অ্যাকসেন্ট রঙ ব্যবহার করবে আপনার থিমের বোতামের পাঠ্য রঙের জন্য সাদা সহ বাটনে ভরাট ব্যাকগ্রাউন্ড রঙের জন্য ব্যবহার করবে।

আপনি এই বৈশিষ্ট্যগুলির সাথে বোতামটি কাস্টমাইজ করতে পারেন:

  • app:rippleColor: বোতামটি রিপল প্রভাবের জন্য ব্যবহৃত রঙ
  • app:backgroundTint: বোতামটির পটভূমিতে একটি রঙ লাগাতে ব্যবহৃত হয়। আপনি যদি বোতামটির পটভূমি রঙ পরিবর্তন করতে চান তবে পটভূমির পরিবর্তে এই বৈশিষ্ট্যটি ব্যবহার করুন।

  • app:strokeColor: বোতাম স্ট্রোকের জন্য ব্যবহৃত রঙ

  • app:strokeWidth: বোতাম স্ট্রোকের জন্য ব্যবহৃত প্রস্থ
  • app:cornerRadius: বোতামের কোণে ব্যবহৃত ব্যাসার্ধ নির্ধারণ করতে ব্যবহৃত হয়

android.support.design.button.MaterialButton
সংকলিত

3
@ আইগরগানাপলস্কি আপনি ঠিক বলেছেন। স্থির প্রকাশের সাথে সবেমাত্র উত্তর আপডেট করেছে updated
গ্যাব্রিয়েল মারিওত্তি

20

এখানে এমন একটি নমুনা যা আপনার অ্যাপ্লিকেশন জুড়ে নিয়মিত বোতাম শৈলী প্রয়োগ করতে সহায়তা করবে।

নির্দিষ্ট শৈলীর সাথে আমি ব্যবহৃত একটি নমুনা থিমটি এখানে রইল ..

<style name="MyTheme" parent="@style/Theme.AppCompat.Light">
   <item name="colorPrimary">@color/primary</item>
    <item name="colorPrimaryDark">@color/primary_dark</item>
    <item name="colorAccent">@color/accent</item>
    <item name="android:buttonStyle">@style/ButtonAppTheme</item>
</style>
<style name="ButtonAppTheme" parent="android:Widget.Material.Button">
<item name="android:background">@drawable/material_button</item>
</style>

এইভাবে আমি পুনরায় রেজো / অঙ্কনযোগ্য-ভি 21 ফোল্ডারের অভ্যন্তরে বোতামের আকার এবং প্রভাবগুলি সংজ্ঞায়িত করেছি ...

<?xml version="1.0" encoding="utf-8"?>
<ripple xmlns:android="http://schemas.android.com/apk/res/android"
    android:color="?attr/colorControlHighlight">
  <item>
    <shape xmlns:android="http://schemas.android.com/apk/res/android">
      <corners android:radius="2dp" /> 
      <solid android:color="@color/primary" />
    </shape>
  </item>
</ripple>

2 ডিপি কোণগুলি এটিকে ম্যাটেরিয়াল থিমের সাথে সামঞ্জস্য রাখতে হবে।


6
অনগ্রসর সামঞ্জস্যপূর্ণ?
স্কাইনেট

দুঃখিত, আমি প্রতিক্রিয়া জানাতে দেরি করছি, থিমগুলি বেশ দেরিতে প্রবর্তিত হওয়ায় এটি পিছিয়ে উপযুক্ত নয়।
সমক্যা

18

পাশেই android.support.design.button.MaterialButton( যা গ্যাব্রিয়েল মেরিওটি ​​উল্লেখ করেছেন ),

আরও একটি Buttonউইজেট com.google.android.material.button.MaterialButtonরয়েছে যার নাম রয়েছে বিভিন্ন স্টাইল এবং এর থেকে প্রসারিত AppCompatButton:

style="@style/Widget.MaterialComponents.Button"
style="@style/Widget.MaterialComponents.Button.UnelevatedButton"
style="@style/Widget.MaterialComponents.Button.TextButton"
style="@style/Widget.MaterialComponents.Button.Icon"
style="@style/Widget.MaterialComponents.Button.TextButton.Icon"

ভরাট, উন্নত Button(ডিফল্ট) :এখানে চিত্র বর্ণনা লিখুন

style="@style/Widget.MaterialComponents.Button"

ভরাট, অপ্রস্তুতButton :এখানে চিত্র বর্ণনা লিখুন

style="@style/Widget.MaterialComponents.Button.UnelevatedButton"

পাঠ্যButton : এখানে চিত্র বর্ণনা লিখুন

style="@style/Widget.MaterialComponents.Button.TextButton"

আইকনButton : এখানে চিত্র বর্ণনা লিখুন

style="@style/Widget.MaterialComponents.Button.Icon"
app:icon="@drawable/icon_24px" // Icons can be added from this

Buttonআইকন সহ একটি পাঠ্য :এখানে চিত্র বর্ণনা লিখুন


পঠন: https://matory.io/develop/android/components/matory-button/

একটি নতুন ম্যাটারিয়াল বোতাম তৈরির জন্য সুবিধামূলক শ্রেণি।

এই শ্রেণিটি কনস্ট্রাক্টরের বোতামের জন্য আপডেট করা উপাদানগুলির শৈলী সরবরাহ করে। উইজেটটি শৈলীর পতাকা ব্যবহার না করে সঠিক ডিফল্ট উপাদান শৈলী প্রদর্শন করবে।


1
আপনি কীভাবে এর রঙ পরিবর্তন করতে পারবেন জানেন?
ড্যানিয়েল গোমেজ রিকো

1
app:backgroundTint& ডকুমেন্টেশনapp:backgroundTintMode থেকে ।
26 ઽ ૯ ท

তারা কীভাবে অক্ষম রাষ্ট্রের রঙ নির্ধারণ করছে
জায়েদ মির্জা

6

আমি প্রচুর জবাব এবং তৃতীয় পক্ষের লাইব চেষ্টা করেছি, তবে কোনওটিই সীমান্ত রক্ষা করছিল না এবং প্রি-ললিপপে কোনও প্রভাব ছাড়াই ললিপপের উপর রিপল প্রভাব ফেলছিল। এখানে বেশ কয়েকটি উত্তরের সংমিশ্রণে আমার চূড়ান্ত সমাধানটি দেওয়া হয়েছে (গ্রেস্কেল রঙের গভীরতার কারণে গিফগুলিতে সীমানা / উত্থিত ভালভাবে সরবরাহ করা হয় না):

বাতাসা

এখানে চিত্র বর্ণনা লিখুন

প্রি-Lollipop

এখানে চিত্র বর্ণনা লিখুন

build.gradle

compile 'com.android.support:cardview-v7:23.1.1'

layout.xml

<android.support.v7.widget.CardView
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:card_view="http://schemas.android.com/apk/res-auto"
    android:id="@+id/card"
    card_view:cardElevation="2dp"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    card_view:cardMaxElevation="8dp"
    android:layout_margin="6dp"
    >
    <Button
        android:id="@+id/button"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_margin="0dp"
        android:background="@drawable/btn_bg"
        android:text="My button"/>
</android.support.v7.widget.CardView>

অঙ্কনযোগ্য-v21 / btn_bg.xml

<?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>

অঙ্কনযোগ্য / btn_bg.xml

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:drawable="@color/colorPrimaryDark" android:state_pressed="true"/>
    <item android:drawable="@color/colorPrimaryDark" android:state_focused="true"/>
    <item android:drawable="@color/colorPrimary"/>
</selector>

ক্রিয়াকলাপের অনক্রিট

    final CardView cardView = (CardView) findViewById(R.id.card);
    final Button button = (Button) findViewById(R.id.button);
    button.setOnTouchListener(new View.OnTouchListener() {
        ObjectAnimator o1 = ObjectAnimator.ofFloat(cardView, "cardElevation", 2, 8)
                .setDuration
                        (80);
        ObjectAnimator o2 = ObjectAnimator.ofFloat(cardView, "cardElevation", 8, 2)
                .setDuration
                        (80);

        @Override
        public boolean onTouch(View v, MotionEvent event) {

            switch (event.getAction()) {
                case MotionEvent.ACTION_DOWN:
                    o1.start();
                    break;
                case MotionEvent.ACTION_CANCEL:
                case MotionEvent.ACTION_UP:
                    o2.start();
                    break;
            }
            return false;
        }
    });

একটি সম্পূর্ণ উদাহরণের সন্ধান করছিল, অবাক হয়ে এটিকে বেশি ভোট দেওয়া হয়নি - ধন্যবাদ।
এক্সএমএএন

4

1) আপনি এক্সএমএল অঙ্কনযোগ্যকে সংজ্ঞায়িত করে গোলাকার কর্নার বোতামটি তৈরি করতে পারেন এবং আপনি বাটন কোণার বৃত্তাকার বৃদ্ধি বা হ্রাস করতে ব্যাসার্ধ বাড়াতে বা হ্রাস করতে পারেন। বোতামের পটভূমি হিসাবে এই এক্সএমএল অঙ্কনযোগ্য সেট করুন।

<?xml version="1.0" encoding="utf-8"?>
<inset xmlns:android="http://schemas.android.com/apk/res/android"
    android:insetLeft="4dp"
    android:insetTop="6dp"
    android:insetRight="4dp"
    android:insetBottom="6dp">
    <ripple android:color="?attr/colorControlHighlight">
        <item>
            <shape android:shape="rectangle"
                android:tint="#0091ea">
                <corners android:radius="10dp" />
                <solid android:color="#1a237e" />
                <padding android:bottom="6dp" />
            </shape>
        </item>
    </ripple>
</inset>

বৃত্তাকার কোণার বোতাম

2) বোতামের রাজ্যগুলির মধ্যে ডিফল্ট ছায়া এবং ছায়ার স্থানান্তর অ্যানিমেশন পরিবর্তন করতে আপনাকে নির্বাচককে সংজ্ঞায়িত করতে হবে এবং এন্ড্রয়েড: stateListAnimator সম্পত্তি ব্যবহার করে বোতামে এটি প্রয়োগ করতে হবে। সম্পূর্ণ বোতাম কাস্টমাইজেশন রেফারেন্সের জন্য: http://www.zoftino.com/android-button


1

আমি সবেমাত্র একটি অ্যান্ড্রয়েড লাইব্রেরি তৈরি করেছি, এটি আপনাকে সহজেই বোতামের রঙ এবং রিপল রঙটি পরিবর্তন করতে দেয়

https://github.com/xgc1986/RippleButton

<com.xgc1986.ripplebutton.widget.RippleButton
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:id="@+id/btn"
    android:text="Android button modified in layout"
    android:textColor="@android:color/white"
    app:buttonColor="@android:color/black"
    app:rippleColor="@android:color/white"/>

আপনি এলোমেলোভাবে রঙগুলি কাস্টমাইজ করার অনুমতি দিয়ে আপনার প্রতিটি বোতামের জন্য আলাদা রঙের বুদ্ধির জন্য একটি স্টাইল তৈরি করার দরকার নেই


1
গ্রন্থাগারটি একটি ত্রুটি তৈরি করে rippleColor has already been defined
:,

0

আপনি এটিকে z অক্ষ যোগ করে দর্শনটিকে বিমান চালনা দিতে পারেন এবং এতে ডিফল্ট ছায়া থাকতে পারেন। এই বৈশিষ্ট্যটি এল পূর্বরূপে সরবরাহ করা হয়েছিল এবং এটি প্রকাশের পরে উপলব্ধ হবে। আপাতত আপনি কেবল একটি চিত্র যুক্ত করতে পারেন যা বোতামের পটভূমির জন্য এই চেহারা দেয়


আমি দেখি. আমি নিজে নিজে এটি করতে হবে। আমি কীভাবে রেডিয়াল স্পর্শকে প্রভাবিত করব? বোতামটির জন্য কেবল একটি রূপান্তর প্রভাব?
xsorifc28

trickyandroid.com/simple-ripple-reveal-elevation-tutorial তোমার দর্শন লগ করা সাহায্য করতে পারে এই লিঙ্কে চেষ্টা stackoverflow.com/questions/24451026/android-l-fab-button
সুহাইল মেহতা
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.