-
Notifications
You must be signed in to change notification settings - Fork 5.2k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #470 from AllenCoder/master
fix view and childview click effect and add long click feedback
- Loading branch information
Showing
22 changed files
with
434 additions
and
42 deletions.
There are no files selected for viewing
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,31 +1,33 @@ | ||
<?xml version="1.0" encoding="utf-8"?> | ||
<manifest xmlns:android="http://schemas.android.com/apk/res/android" | ||
package="com.chad.baserecyclerviewadapterhelper"> | ||
<manifest package="com.chad.baserecyclerviewadapterhelper" | ||
xmlns:android="http://schemas.android.com/apk/res/android"> | ||
|
||
<uses-permission android:name="android.permission.INTERNET" /> | ||
<uses-permission android:name="android.permission.INTERNET"/> | ||
|
||
<application | ||
android:allowBackup="true" | ||
android:icon="@mipmap/logo" | ||
android:label="@string/app_name" | ||
android:supportsRtl="true"> | ||
<activity android:name=".PullToRefreshUseActivity"></activity> | ||
<activity android:name=".PullToRefreshUseActivity"/> | ||
<activity android:name=".HomeActivity"> | ||
<intent-filter> | ||
<action android:name="android.intent.action.MAIN" /> | ||
<action android:name="android.intent.action.MAIN"/> | ||
|
||
<category android:name="android.intent.category.LAUNCHER" /> | ||
<category android:name="android.intent.category.LAUNCHER"/> | ||
</intent-filter> | ||
</activity> | ||
<activity android:name=".AnimationUseActivity"></activity> | ||
<activity android:name=".HeaderAndFooterUseActivity"></activity> | ||
<activity android:name=".SectionUseActivity"></activity> | ||
<activity android:name=".MultipleItemUseActivity"></activity> | ||
<activity android:name=".EmptyViewUseActivity"></activity> | ||
<activity android:name=".ItemDragAndSwipeUseActivity"></activity> | ||
<activity android:name=".RecyclerClickItemActivity"></activity> | ||
<activity android:name=".ExpandableUseActivity"></activity> | ||
<activity android:name=".DataBindingUseActivity"></activity> | ||
<activity android:name=".AnimationUseActivity"/> | ||
<activity android:name=".HeaderAndFooterUseActivity"/> | ||
<activity android:name=".SectionUseActivity"/> | ||
<activity android:name=".MultipleItemUseActivity"/> | ||
<activity android:name=".EmptyViewUseActivity"/> | ||
<activity android:name=".ItemDragAndSwipeUseActivity"/> | ||
<activity android:name=".RecyclerClickItemActivity"/> | ||
<activity android:name=".ExpandableUseActivity"/> | ||
<activity android:name=".DataBindingUseActivity"/> | ||
<activity android:name=".ItemClickActivity"> | ||
</activity> | ||
</application> | ||
|
||
</manifest> | ||
</manifest> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
59 changes: 59 additions & 0 deletions
59
app/src/main/java/com/chad/baserecyclerviewadapterhelper/ItemClickActivity.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,59 @@ | ||
package com.chad.baserecyclerviewadapterhelper; | ||
|
||
import android.app.Activity; | ||
import android.os.Bundle; | ||
import android.support.v7.widget.LinearLayoutManager; | ||
import android.support.v7.widget.RecyclerView; | ||
import android.util.Log; | ||
import android.view.MotionEvent; | ||
import android.view.View; | ||
|
||
import com.chad.baserecyclerviewadapterhelper.adapter.ItemClickAdapter; | ||
import com.chad.baserecyclerviewadapterhelper.entity.ClickEntity; | ||
import com.chad.library.adapter.base.BaseQuickAdapter; | ||
import com.chad.library.adapter.base.listener.OnItemClickListener; | ||
|
||
import java.util.ArrayList; | ||
import java.util.List; | ||
|
||
public class ItemClickActivity extends Activity { | ||
|
||
private RecyclerView mRecyclerView; | ||
private ItemClickAdapter itemClickAdapter; | ||
private static final int PAGE_SIZE = 10; | ||
private static String TAG = "RecyclerClickItemActivity"; | ||
@Override | ||
protected void onCreate(Bundle savedInstanceState) { | ||
super.onCreate(savedInstanceState); | ||
setContentView(R.layout.activity_item_click); | ||
mRecyclerView = (RecyclerView) findViewById(R.id.list); | ||
mRecyclerView.setLayoutManager(new LinearLayoutManager(this)); | ||
initAdapter(); | ||
mRecyclerView.addOnItemTouchListener(new OnItemClickListener() { | ||
@Override | ||
public void SimpleOnItemClick(final BaseQuickAdapter adapter, final View view, final int position) { | ||
Log.d(TAG, "SimpleOnItemClick: "); | ||
} | ||
}); | ||
|
||
|
||
} | ||
|
||
private void initAdapter() { | ||
List<ClickEntity> data = new ArrayList<>(); | ||
data.add(new ClickEntity(ClickEntity.CLICK_ITEM_VIEW)); | ||
data.add(new ClickEntity(ClickEntity.CLICK_ITEM_CHILD_VIEW)); | ||
data.add(new ClickEntity(ClickEntity.LONG_CLICK_ITEM_VIEW)); | ||
data.add(new ClickEntity(ClickEntity.LONG_CLICK_ITEM_CHILD_VIEW)); | ||
itemClickAdapter = new ItemClickAdapter(data); | ||
itemClickAdapter.openLoadAnimation(); | ||
mRecyclerView.setAdapter(itemClickAdapter); | ||
} | ||
|
||
|
||
@Override | ||
public boolean dispatchTouchEvent(MotionEvent ev) { | ||
return super.dispatchTouchEvent(ev); | ||
} | ||
|
||
} |
44 changes: 44 additions & 0 deletions
44
app/src/main/java/com/chad/baserecyclerviewadapterhelper/adapter/ItemClickAdapter.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,44 @@ | ||
package com.chad.baserecyclerviewadapterhelper.adapter; | ||
|
||
import com.chad.baserecyclerviewadapterhelper.R; | ||
import com.chad.baserecyclerviewadapterhelper.entity.ClickEntity; | ||
import com.chad.library.adapter.base.BaseMultiItemQuickAdapter; | ||
import com.chad.library.adapter.base.BaseViewHolder; | ||
|
||
import java.util.List; | ||
|
||
/** | ||
* | ||
*/ | ||
public class ItemClickAdapter extends BaseMultiItemQuickAdapter<ClickEntity, BaseViewHolder> { | ||
|
||
public ItemClickAdapter(List<ClickEntity> data) { | ||
super(data); | ||
addItemType(ClickEntity.CLICK_ITEM_VIEW, R.layout.item_click_view); | ||
addItemType(ClickEntity.CLICK_ITEM_CHILD_VIEW, R.layout.item_click_childview); | ||
addItemType(ClickEntity.LONG_CLICK_ITEM_VIEW, R.layout.item_long_click_view); | ||
addItemType(ClickEntity.LONG_CLICK_ITEM_CHILD_VIEW, R.layout.item_long_click_childview); | ||
} | ||
|
||
|
||
@Override | ||
protected void convert(final BaseViewHolder helper, final ClickEntity item) { | ||
switch (helper.getItemViewType()) { | ||
case ClickEntity.CLICK_ITEM_VIEW: | ||
helper.addOnClickListener(R.id.btn); | ||
break; | ||
case ClickEntity.CLICK_ITEM_CHILD_VIEW: | ||
helper.addOnClickListener(R.id.iv_num_reduce).addOnClickListener(R.id.iv_num_add) | ||
.addOnLongClickListener(R.id.iv_num_reduce).addOnLongClickListener(R.id.iv_num_add); | ||
// set img data | ||
break; | ||
case ClickEntity.LONG_CLICK_ITEM_VIEW: | ||
helper.addOnLongClickListener(R.id.btn); | ||
break; | ||
case ClickEntity.LONG_CLICK_ITEM_CHILD_VIEW: | ||
helper.addOnLongClickListener(R.id.iv_num_reduce).addOnLongClickListener(R.id.iv_num_add) | ||
.addOnClickListener(R.id.iv_num_reduce).addOnClickListener(R.id.iv_num_add); | ||
break; | ||
} | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
42 changes: 42 additions & 0 deletions
42
app/src/main/java/com/chad/baserecyclerviewadapterhelper/entity/ClickEntity.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,42 @@ | ||
/* | ||
******************************* Copyright (c)*********************************\ | ||
** | ||
** (c) Copyright 2015, Allen, china, shanghai | ||
** All Rights Reserved | ||
** | ||
** | ||
** | ||
**-----------------------------------版本信息------------------------------------ | ||
** 版 本: V0.1 | ||
** | ||
**------------------------------------------------------------------------------ | ||
********************************End of Head************************************\ | ||
*/ | ||
package com.chad.baserecyclerviewadapterhelper.entity; | ||
|
||
import com.chad.library.adapter.base.entity.MultiItemEntity; | ||
|
||
/** | ||
* 文 件 名: ClickEntity | ||
* 创 建 人: Allen | ||
* 创建日期: 16/11/1 22:16 | ||
* 邮 箱: [email protected] | ||
* 修改时间: | ||
* 修改备注: | ||
*/ | ||
public class ClickEntity implements MultiItemEntity { | ||
public static final int CLICK_ITEM_VIEW = 1; | ||
public static final int CLICK_ITEM_CHILD_VIEW = 2; | ||
public static final int LONG_CLICK_ITEM_VIEW = 3; | ||
public static final int LONG_CLICK_ITEM_CHILD_VIEW = 4; | ||
public int Type; | ||
|
||
public ClickEntity(final int type) { | ||
Type = type; | ||
} | ||
|
||
@Override | ||
public int getItemType() { | ||
return Type; | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,9 @@ | ||
<?xml version="1.0" encoding="utf-8"?> | ||
<selector xmlns:android="http://schemas.android.com/apk/res/android"> | ||
|
||
<item android:drawable="@mipmap/icon_add_press" android:state_pressed="true" /> | ||
<item android:drawable="@mipmap/icon_add" android:state_pressed="false" /> | ||
<item android:drawable="@mipmap/icon_add" /> | ||
|
||
|
||
</selector> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,6 @@ | ||
<?xml version="1.0" encoding="utf-8"?> | ||
<selector xmlns:android="http://schemas.android.com/apk/res/android"> | ||
<item android:drawable="@mipmap/icon_minus_press" android:state_pressed="true" /> | ||
<item android:drawable="@mipmap/icon_minus" android:state_pressed="false"/> | ||
<item android:drawable="@mipmap/icon_minus" /> | ||
</selector> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,11 @@ | ||
<?xml version="1.0" encoding="utf-8"?> | ||
<selector xmlns:android="http://schemas.android.com/apk/res/android"> | ||
<item android:drawable="@android:color/holo_red_light" android:state_pressed="true"/> | ||
<item android:state_active="false"> | ||
<shape android:shape="rectangle"> | ||
<corners android:radius="4dp"/> | ||
<solid android:color="@color/item_bg"/> | ||
<stroke android:color="@color/color_light_blue" android:width="1dp"/> | ||
</shape> | ||
</item> | ||
</selector> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,12 @@ | ||
<?xml version="1.0" encoding="utf-8"?> | ||
<selector xmlns:android="http://schemas.android.com/apk/res/android"> | ||
<item android:drawable="@android:color/holo_orange_light" android:state_pressed="true" /> | ||
<item android:drawable="@android:color/holo_red_light" android:state_pressed="true"/> | ||
<item android:state_active="false"> | ||
<shape android:shape="rectangle"> | ||
<corners android:radius="4dp"/> | ||
<solid android:color="@color/item_bg"/> | ||
<stroke android:color="@color/color_light_blue" android:width="1dp"/> | ||
</shape> | ||
</item> | ||
</selector> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,13 @@ | ||
<?xml version="1.0" encoding="utf-8"?> | ||
<RelativeLayout | ||
android:id="@+id/activity_item_click" | ||
xmlns:android="http://schemas.android.com/apk/res/android" | ||
xmlns:tools="http://schemas.android.com/tools" | ||
android:layout_width="match_parent" | ||
android:layout_height="match_parent" | ||
tools:context="com.chad.baserecyclerviewadapterhelper.ItemClickActivity"> | ||
<android.support.v7.widget.RecyclerView | ||
android:layout_width="match_parent" | ||
android:layout_height="match_parent" | ||
android:id="@+id/list"/> | ||
</RelativeLayout> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,58 @@ | ||
<?xml version="1.0" encoding="utf-8"?> | ||
<RelativeLayout android:id="@+id/layout_root" | ||
xmlns:android="http://schemas.android.com/apk/res/android" | ||
android:layout_width="match_parent" | ||
android:layout_height="wrap_content" | ||
android:layout_marginLeft="5dp" | ||
android:layout_marginRight="5dp" | ||
android:layout_marginTop="5dp" | ||
android:layout_marginBottom="5dp" | ||
android:background="@drawable/selector_item" | ||
> | ||
|
||
<ImageView | ||
android:id="@+id/iv_photo" | ||
android:layout_width="70dp" | ||
android:layout_height="90dp" | ||
android:layout_alignParentLeft="true" | ||
android:layout_alignParentStart="true" | ||
android:layout_alignParentTop="true" | ||
android:scaleType="fitXY" | ||
android:src="@mipmap/logo"/> | ||
|
||
|
||
<LinearLayout | ||
android:id="@+id/layout_num" | ||
android:layout_width="wrap_content" | ||
android:layout_height="wrap_content" | ||
android:layout_alignBottom="@id/iv_photo" | ||
android:layout_alignParentRight="true" | ||
android:layout_marginBottom="10dp" | ||
android:layout_marginRight="16dp" | ||
android:gravity="center_vertical" | ||
android:orientation="horizontal"> | ||
|
||
|
||
<ImageView | ||
android:id="@+id/iv_num_reduce" | ||
android:layout_width="22dp" | ||
android:layout_height="22dp" | ||
android:background="@drawable/selector_item_child"/> | ||
|
||
<TextView | ||
android:id="@+id/tv_num" | ||
android:layout_width="35dp" | ||
android:layout_height="wrap_content" | ||
android:gravity="center" | ||
android:text="0"/> | ||
|
||
<ImageView | ||
android:id="@+id/iv_num_add" | ||
android:layout_width="22dp" | ||
android:layout_height="22dp" | ||
android:background="@drawable/selector_item_child"/> | ||
|
||
</LinearLayout> | ||
|
||
|
||
</RelativeLayout> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,23 @@ | ||
<?xml version="1.0" encoding="utf-8"?> | ||
<LinearLayout | ||
xmlns:android="http://schemas.android.com/apk/res/android" | ||
android:id="@+id/card_view" | ||
android:layout_width="match_parent" | ||
android:layout_height="80dip" | ||
android:layout_marginLeft="5dp" | ||
android:layout_marginRight="5dp" | ||
android:layout_gravity="center" | ||
android:gravity="center" | ||
android:background="@drawable/touch_bg" | ||
> | ||
|
||
<Button | ||
android:id="@+id/btn" | ||
android:layout_width="160dp" | ||
android:layout_height="50dp" | ||
android:gravity="center" | ||
android:textColor="@color/txt_color" | ||
android:background="@drawable/touch_bg" | ||
android:text="点击我"/> | ||
|
||
</LinearLayout> |
Oops, something went wrong.