Skip to content

Releases: trianapp/singleadapter

lib

03 Jan 10:08
d2519a9
Compare
Choose a tag to compare

What's Changed

Full Changelog: v1.0.20...v1.0.21

Maven

03 Jan 09:54
844b60a
Compare
Choose a tag to compare

What's Changed

Full Changelog: v1.0.19...v1.0.20

Kt

03 Jan 09:26
baff260
Compare
Choose a tag to compare
Kt

What's Changed

Full Changelog: v1.0.18...v1.0.19

Kt

03 Jan 08:52
0e2753f
Compare
Choose a tag to compare
Kt

What's Changed

Full Changelog: v1.0.17...v1.0.18

Kt

03 Jan 08:46
52ce892
Compare
Choose a tag to compare
Kt

What's Changed

Full Changelog: v1.0.16...v1.0.17

Kt

03 Jan 08:10
90913f1
Compare
Choose a tag to compare
Kt

What's Changed

New Contributors

Full Changelog: v1.0.15...v1.0.16

LayoutManager

08 Feb 09:55
Compare
Choose a tag to compare

SingleAdapter

  • Satu Adapter yang bisa digunakan berulang-ulang

  • Cara Pakai

SingleAdapter<PromoModel> promo = new SingleAdapter<>(R.layout.item_food_promo, onClick);

R.layout.item_food_promo adalah layout item yang akan di tampilkan di recylerview dan onClick adalah :

private onEventClick<PromoModel> onClick = new onEventClick<PromoModel>() {
        @Override
        public void onEdit(PromoModel payload, int position) {

        }

        @Override
        public void onDetail(PromoModel payload, int position) {

        }

        @Override
        public void onDelete(PromoModel payload, int position) {

        }
    };

untuk item recycler harus membuat kelas/class baru dengan extends Parent implement SingleAdapterRow<Model> Seperti :

class ItemPromo extends Parent implements SingleAdapterRow<PromoModel> {

}

Parent bisa diganti View lainnya misal LinearLayout atau View lain

xml layout itemnya menjadi:

 <com.trian.damai.ui.home.ItemPromo
        android:layout_height="wrap_content"
        android:layout_width="wrap_content">

        <androidx.cardview.widget.CardView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_gravity="center"
         ...

kemudian implement binView dan onFinishInflate

    Button btn ;
    TextView tv;

    @Override
    protected void onFinishInflate() {
        super.onFinishInflate();
       //disini inisiasi view
        btn = (Button) findViewById(R.id.button);
        tv = (Button) findViewById(R.id.textview);

    }

    @Override
    public void bindView(PromoModel data, onEventClick<PromoModel> eventClick, int position) {
        // disini setdata ke view
        // contoh:
        tv.setText(data.getTitle());
        btn.setOnClickListener(new View.OnClickListener() {
                        @Override
                        public void onClick(View v) {
                            eventClick.onDetail(data,position);
                        }
                    });
        }
    }

Untuk men-set data ke adapter

  • Di konstruktor langsung
   List<PromoModel> data = new ArrayList<>();
   SingleAdapter<PromoMode> adapter = new SingleAdapter<>(R.layout.item_food_promo, p,data);
  • Atau gunakan method setData dan addData

setData

  List<PromoModel> data = new ArrayList<>();
  adapter.setData(data);

addData

   PromoModel data = new PromoModel();
   adapter.addData(data);

Extra

  • Kita bisa menambahkan animasi di adapternya(secara default menggunakan fade_in)
  • Animasi yang tersedia

SingleAnimation.fade_in
SingleAnimation.fade_out
SingleAnimation.slide_left
SingleAnimation.slide_right
Untuk menentukan animasi gunakan:

  adapter.setAnimation(SingleAdapter.SingleAnimation.fade_in);

Cara install

  • Tambahkan JitPack repository ke build file
	allprojects {
		repositories {
			...
			maven { url 'https://jitpack.io' }
		}
	}
  • Tambahkan dependency
    dependencies {
	    ...
	    implementation 'com.github.triandamai:singleadapter:v1.0.5'
    }

#ChangeLog

  • Animation
  • DiffUtil

Next

  • mendukung dataBinding
  • menambah animasi

DiffUtil

08 Feb 05:45
Compare
Choose a tag to compare

SingleAdapter

  • Satu Adapter yang bisa digunakan berulang-ulang

  • Cara Pakai

SingleAdapter<PromoModel> promo = new SingleAdapter<>(R.layout.item_food_promo, onClick);

R.layout.item_food_promo adalah layout item yang akan di tampilkan di recylerview dan onClick adalah :

private onEventClick<PromoModel> onClick = new onEventClick<PromoModel>() {
        @Override
        public void onEdit(PromoModel payload, int position) {

        }

        @Override
        public void onDetail(PromoModel payload, int position) {

        }

        @Override
        public void onDelete(PromoModel payload, int position) {

        }
    };

untuk item recycler harus membuat kelas/class baru dengan extends Parent implement SingleAdapterRow<Model> Seperti :

class ItemPromo extends Parent implements SingleAdapterRow<PromoModel> {

}

Parent bisa diganti View lainnya misal LinearLayout atau View lain

xml layout itemnya menjadi:

 <com.trian.damai.ui.home.ItemPromo
        android:layout_height="wrap_content"
        android:layout_width="wrap_content">

        <androidx.cardview.widget.CardView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_gravity="center"
         ...

kemudian implement binView dan onFinishInflate

    Button btn ;
    TextView tv;

    @Override
    protected void onFinishInflate() {
        super.onFinishInflate();
       //disini inisiasi view
        btn = (Button) findViewById(R.id.button);
        tv = (Button) findViewById(R.id.textview);

    }

    @Override
    public void bindView(PromoModel data, onEventClick<PromoModel> eventClick, int position) {
        // disini setdata ke view
        // contoh:
        tv.setText(data.getTitle());
        btn.setOnClickListener(new View.OnClickListener() {
                        @Override
                        public void onClick(View v) {
                            eventClick.onDetail(data,position);
                        }
                    });
        }
    }

Untuk men-set data ke adapter

  • Di konstruktor langsung
   List<PromoModel> data = new ArrayList<>();
   SingleAdapter<PromoMode> adapter = new SingleAdapter<>(R.layout.item_food_promo, p,data);
  • Atau gunakan method setData dan addData

setData

  List<PromoModel> data = new ArrayList<>();
  adapter.setData(data);

addData

   PromoModel data = new PromoModel();
   adapter.addData(data);

Extra

  • Kita bisa menambahkan animasi di adapternya(secara default menggunakan fade_in)
  • Animasi yang tersedia

SingleAnimation.fade_in
SingleAnimation.fade_out
SingleAnimation.slide_left
SingleAnimation.slide_right
Untuk menentukan animasi gunakan:

  adapter.setAnimation(SingleAdapter.SingleAnimation.fade_in);

Cara install

  • Tambahkan JitPack repository ke build file
	allprojects {
		repositories {
			...
			maven { url 'https://jitpack.io' }
		}
	}
  • Tambahkan dependency
    dependencies {
	    ...
	    implementation 'com.github.triandamai:singleadapter:v1.0.5'
    }

#ChangeLog

  • Animation
  • DiffUtil

Next

  • mendukung dataBinding
  • menambah animasi

DiffUtil

08 Feb 05:41
Compare
Choose a tag to compare

SingleAdapter

  • Satu Adapter yang bisa digunakan berulang-ulang

  • Cara Pakai

SingleAdapter<PromoModel> promo = new SingleAdapter<>(R.layout.item_food_promo, onClick);

R.layout.item_food_promo adalah layout item yang akan di tampilkan di recylerview dan onClick adalah :

private onEventClick<PromoModel> onClick = new onEventClick<PromoModel>() {
        @Override
        public void onEdit(PromoModel payload, int position) {

        }

        @Override
        public void onDetail(PromoModel payload, int position) {

        }

        @Override
        public void onDelete(PromoModel payload, int position) {

        }
    };

untuk item recycler harus membuat kelas/class baru dengan extends Parent implement SingleAdapterRow<Model> Seperti :

class ItemPromo extends Parent implements SingleAdapterRow<PromoModel> {

}

Parent bisa diganti View lainnya misal LinearLayout atau View lain

xml layout itemnya menjadi:

 <com.trian.damai.ui.home.ItemPromo
        android:layout_height="wrap_content"
        android:layout_width="wrap_content">

        <androidx.cardview.widget.CardView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_gravity="center"
         ...

kemudian implement binView dan onFinishInflate

    Button btn ;
    TextView tv;

    @Override
    protected void onFinishInflate() {
        super.onFinishInflate();
       //disini inisiasi view
        btn = (Button) findViewById(R.id.button);
        tv = (Button) findViewById(R.id.textview);

    }

    @Override
    public void bindView(PromoModel data, onEventClick<PromoModel> eventClick, int position) {
        // disini setdata ke view
        // contoh:
        tv.setText(data.getTitle());
        btn.setOnClickListener(new View.OnClickListener() {
                        @Override
                        public void onClick(View v) {
                            eventClick.onDetail(data,position);
                        }
                    });
        }
    }

Untuk men-set data ke adapter

  • Di konstruktor langsung
   List<PromoModel> data = new ArrayList<>();
   SingleAdapter<PromoMode> adapter = new SingleAdapter<>(R.layout.item_food_promo, p,data);
  • Atau gunakan method setData dan addData

setData

  List<PromoModel> data = new ArrayList<>();
  adapter.setData(data);

addData

   PromoModel data = new PromoModel();
   adapter.addData(data);

Extra

  • Kita bisa menambahkan animasi di adapternya(secara default menggunakan fade_in)
  • Animasi yang tersedia

SingleAnimation.fade_in
SingleAnimation.fade_out
SingleAnimation.slide_left
SingleAnimation.slide_right
Untuk menentukan animasi gunakan:

  adapter.setAnimation(SingleAdapter.SingleAnimation.fade_in);

Cara install

  • Tambahkan JitPack repository ke build file
	allprojects {
		repositories {
			...
			maven { url 'https://jitpack.io' }
		}
	}
  • Tambahkan dependency
    dependencies {
	    ...
	    implementation 'com.github.triandamai:singleadapter:v1.0.5'
    }

#ChangeLog

  • Animation
  • DiffUtil

Next

  • mendukung dataBinding
  • menambah animasi

DiffUtil

08 Feb 05:16
Compare
Choose a tag to compare

SingleAdapter

  • Satu Adapter yang bisa digunakan berulang-ulang

  • Cara Pakai

SingleAdapter<PromoModel> promo = new SingleAdapter<>(R.layout.item_food_promo, onClick);

R.layout.item_food_promo adalah layout item yang akan di tampilkan di recylerview dan onClick adalah :

private onEventClick<PromoModel> onClick = new onEventClick<PromoModel>() {
        @Override
        public void onEdit(PromoModel payload, int position) {

        }

        @Override
        public void onDetail(PromoModel payload, int position) {

        }

        @Override
        public void onDelete(PromoModel payload, int position) {

        }
    };

untuk item recycler harus membuat kelas/class baru dengan extends Parent implement SingleAdapterRow<Model> Seperti :

class ItemPromo extends Parent implements SingleAdapterRow<PromoModel> {

}

Parent bisa diganti View lainnya misal LinearLayout atau View lain

xml layout itemnya menjadi:

 <com.trian.damai.ui.home.ItemPromo
        android:layout_height="wrap_content"
        android:layout_width="wrap_content">

        <androidx.cardview.widget.CardView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_gravity="center"
         ...

kemudian implement binView dan onFinishInflate

    Button btn ;
    TextView tv;

    @Override
    protected void onFinishInflate() {
        super.onFinishInflate();
       //disini inisiasi view
        btn = (Button) findViewById(R.id.button);
        tv = (Button) findViewById(R.id.textview);

    }

    @Override
    public void bindView(PromoModel data, onEventClick<PromoModel> eventClick, int position) {
        // disini setdata ke view
        // contoh:
        tv.setText(data.getTitle());
        btn.setOnClickListener(new View.OnClickListener() {
                        @Override
                        public void onClick(View v) {
                            eventClick.onDetail(data,position);
                        }
                    });
        }
    }

Untuk men-set data ke adapter

  • Di konstruktor langsung
   List<PromoModel> data = new ArrayList<>();
   SingleAdapter<PromoMode> adapter = new SingleAdapter<>(R.layout.item_food_promo, p,data);
  • Atau gunakan method setData dan addData

setData

  List<PromoModel> data = new ArrayList<>();
  adapter.setData(data);

addData

   PromoModel data = new PromoModel();
   adapter.addData(data);

Extra

  • Kita bisa menambahkan animasi di adapternya(secara default menggunakan fade_in)
  • Animasi yang tersedia

SingleAnimation.fade_in
SingleAnimation.fade_out
SingleAnimation.slide_left
SingleAnimation.slide_right
Untuk menentukan animasi gunakan:

  adapter.setAnimation(SingleAdapter.SingleAnimation.fade_in);

Cara install

  • Tambahkan JitPack repository ke build file
	allprojects {
		repositories {
			...
			maven { url 'https://jitpack.io' }
		}
	}
  • Tambahkan dependency
    dependencies {
	    ...
	    implementation 'com.github.triandamai:singleadapter:v1.0.5'
    }

#ChangeLog

  • Animation
  • DiffUtil

Next

  • mendukung dataBinding
  • menambah animasi