菜鸟实现(四) AndroidStudio 安卓 消息列表 支持侧滑删除功能 (粗糙版)


先放效果图

        

              

 

说明:页面中的底部导航栏代码参考https://www.runoob.com/w3cnote/android-tutorial-fragment-demo1.html

 

聊天列表页 java代码如下

 1 package com.example.home;  2 
 3 import android.content.Intent;  4 import android.os.Bundle;  5 import android.view.LayoutInflater;  6 import android.view.View;  7 import android.view.View.OnClickListener;  8 import android.view.ViewGroup;  9 import android.widget.Toast; 10 import com.example.home.message.SwipeAdapter; 11 import com.example.home.message.SwipeListView; 12 import com.example.home.message.WXMessage; 13 import androidx.fragment.app.Fragment; 14 import java.util.ArrayList; 15 import java.util.List; 16 
17 public class MessageFragment extends Fragment implements OnClickListener { 18  SwipeAdapter mAdapter; 19 
20 
21  @Override 22     public View onCreateView(LayoutInflater inflater, ViewGroup container, 23  Bundle savedInstanceState) { 24         View view = inflater.inflate(R.layout.activity_message, container, false); 25 
26 
27         SwipeListView mListView = (SwipeListView)view.findViewById(R.id.mListView); 28         final List<WXMessage> data = new ArrayList<WXMessage>(); 29         WXMessage msg = null; 30         msg = new WXMessage("家校邦客服", "欢迎登录家校邦!", "早上8:44"); 31  msg.setIcon_id(R.drawable.chat1); 32  data.add(msg); 33 
34 
35         mAdapter = new SwipeAdapter(view.getContext(),data); 36 
37         mAdapter.setOnRightItemClickListener(new SwipeAdapter.onRightItemClickListener() { 38 
39  @Override 40             public void onRightItemClick(View v, int position) { 41 
42                 Toast.makeText(v.getContext(), "删除第  " + (position+1)+" 对话记录", Toast.LENGTH_SHORT).show(); 43  data.remove(position); 44  mAdapter.notifyDataSetChanged(); 45 
46  } 47  }); 48 
49 
50         mAdapter.setOnLeftItemClickListener(new SwipeAdapter.onLeftItemClickListener() { 51 
52 
53             public void onLeftItemClick(View v, int position) { 54 
55                 Intent intent = new Intent(); 56                 intent.setAction("abc"); //跳转到聊天窗口,在AndroidManifest.xml文件里需要有相应代码呼应 57  startActivity(intent); 58 
59 
60  } 61  }); 62 
63 
64 
65         mAdapter.setOnTopItemClickListener(new SwipeAdapter.onTopItemClickListener() { 66 
67 
68             public void onTopItemClick(View v, int position) { 69 
70                 Intent intent = new Intent(); 71                 intent.setAction("eee"); //跳转到添加好友窗口 72  startActivity(intent); 73 
74 
75  } 76  }); 77 
78 
79  mListView.setAdapter(mAdapter); 80 
81 
82         return view; 83  } 84 
85  @Override 86     public void onClick(View view) { 87 
88  } 89 }

 

 

添加好友窗口 java代码如下

 1 package com.example.home.message;  2 
 3 import android.app.Activity;  4 import android.os.Bundle;  5 import android.view.View;  6 import android.view.View.OnClickListener;  7 import android.view.Window;  8 import android.widget.ImageView;  9 
10 import com.example.home.R; 11 
12 public class Addfriend extends Activity implements OnClickListener { 13 
14     protected void onCreate(Bundle savedInstanceState) { 15         // TODO Auto-generated method stub
16         super.onCreate(savedInstanceState); 17  requestWindowFeature(Window.FEATURE_NO_TITLE); 18  setContentView(R.layout.activity_message_addfriend); 19 
20 
21  } 22 
23 
24 
25 
26     public void onClick(View v) { 27 
28         ImageView iv_back3 = (ImageView) findViewById(R.id.iv_back3); 29         iv_back3.setOnClickListener(this); 30 
31 
32         switch (v.getId()) { //返回到聊天列表 33             case R.id.iv_back3: 34  finish(); 35                 break; 36  } 37  } 38 
39 
40 }

 

 Adapter java代码如下

 

 1 package com.example.home.message;  2 
 3 import android.content.Context;  4 import android.util.Log;  5 import android.view.LayoutInflater;  6 import android.view.View;  7 import android.view.View.OnClickListener;  8 import android.view.ViewGroup;  9 import android.widget.BaseAdapter;  10 import android.widget.ImageButton;  11 import android.widget.ImageView;  12 import android.widget.RelativeLayout;  13 import android.widget.TextView;  14 
 15 import com.example.home.R;  16 
 17 import java.util.List;  18 
 19 public class SwipeAdapter extends BaseAdapter {  20 
 21     private Context mContext = null;  22     private List<WXMessage> data;  23 
 24 
 25     public SwipeAdapter(Context ctx,List<WXMessage> data) {  26         mContext = ctx;  27         this.data = data;  28  }  29 
 30  @Override  31     public int getCount() {  32         return data.size();  33  }  34 
 35  @Override  36     public Object getItem(int position) {  37         return null;  38  }  39 
 40  @Override  41     public long getItemId(int position) {  42         return position;  43  }  44 
 45  @Override  46     public View getView(final int position, View convertView , final ViewGroup parent) {  47 
 48  ViewHolder holder;  49         if (convertView == null) {  50             convertView = LayoutInflater.from(mContext).inflate(R.layout.activity_message_chatlist, parent, false);  51             holder = new ViewHolder();  52             holder.item_left = (RelativeLayout)convertView.findViewById(R.id.item_left);  53             holder.item_right = (RelativeLayout)convertView.findViewById(R.id.item_right);  54             holder.addfriend = (ImageButton)convertView.findViewById(R.id.addfriend);  55 
 56             holder.iv_icon = (ImageView) convertView.findViewById(R.id.iv_icon);  57             holder.tv_title = (TextView)convertView.findViewById(R.id.tv_title);  58             holder.tv_msg = (TextView)convertView.findViewById(R.id.tv_msg);  59             holder.tv_time = (TextView)convertView.findViewById(R.id.tv_time);  60 
 61             holder.item_right_txt = (TextView)convertView.findViewById(R.id.item_right_txt);  62  convertView.setTag(holder);  63         } else {  64             holder = (ViewHolder)convertView.getTag();  65  }  66 
 67         Log.i("SwipeAdapter", "getView position="+position);  68 
 69         WXMessage msg = data.get(position);  70 
 71  holder.tv_title.setText(msg.getTitle());  72  holder.tv_msg.setText(msg.getMsg());  73  holder.tv_time.setText(msg.getTime());  74 
 75  holder.iv_icon.setImageResource(msg.getIcon_id());  76 
 77         holder.item_right.setOnClickListener(new OnClickListener() {  78  @Override  79             public void onClick(View v) {  80                 if (mListener != null) {  81  mListener.onRightItemClick(v, position);  82  }  83  }  84  });  85         holder.item_left.setOnClickListener(new OnClickListener() {  86  @Override  87             public void onClick(View v) {  88                 if (mlListener != null) {  89 
 90                     v = LayoutInflater.from(mContext).inflate(R.layout.activity_message_chat, parent, false);  91  mlListener.onLeftItemClick(v, position);  92  }  93  }  94 
 95 
 96  });  97         holder.addfriend.setOnClickListener(new OnClickListener() {  98  @Override  99             public void onClick(View v) { 100                 if (mLListener != null) { 101 
102                     v = LayoutInflater.from(mContext).inflate(R.layout.activity_message_chat, parent, false); 103  mLListener.onTopItemClick(v, position); 104  } 105  } 106 
107 
108  }); 109         return convertView; 110  } 111 
112     static class ViewHolder { 113         public ImageButton addfriend; 114  RelativeLayout item_left; 115  RelativeLayout item_right; 116 
117  TextView tv_title; 118  TextView tv_msg; 119  TextView tv_time; 120  ImageView iv_icon; 121 
122  TextView item_right_txt; 123  } 124 
125 
126     private onRightItemClickListener mListener = null; 127 
128     public void setOnRightItemClickListener(onRightItemClickListener listener){ 129         mListener = listener; 130  } 131 
132     public interface onRightItemClickListener { 133         void onRightItemClick(View v, int position); 134  } 135 
136 
137     private onLeftItemClickListener mlListener = null; 138 
139     public void setOnLeftItemClickListener(onLeftItemClickListener listener){ 140         mlListener = listener; 141  } 142 
143     public interface onLeftItemClickListener { 144         void onLeftItemClick(View v, int position); 145  } 146 
147 
148     private onTopItemClickListener mLListener = null; 149 
150     public void setOnTopItemClickListener(onTopItemClickListener listener){ 151         mLListener = listener; 152  } 153 
154     public interface onTopItemClickListener { 155         void onTopItemClick(View v, int position); 156  } 157 
158 
159 
160 }

 

SwipeListView.java代码如下

 

 1 package com.example.home.message;  2 
 3 import android.content.Context;  4 import android.util.AttributeSet;  5 import android.util.Log;  6 import android.view.MotionEvent;  7 import android.view.View;  8 import android.widget.ListView;  9 import android.widget.RelativeLayout;  10 
 11 import com.example.home.R;  12 
 13 public class SwipeListView extends ListView {  14 
 15     private static final String TAG = SwipeListView.class.getSimpleName();  16 
 17     private boolean isShown;  18 
 19     private View mPreItemView;  20 
 21     private View mCurrentItemView;  22 
 23     private float mFirstX;  24 
 25     private float mFirstY;  26 
 27     private boolean mIsHorizontal;  28 
 29     public SwipeListView(Context context) {  30         super(context);  31         // TODO Auto-generated constructor stub
 32  }  33 
 34     public SwipeListView(Context context, AttributeSet attrs) {  35         super(context, attrs);  36         // TODO Auto-generated constructor stub
 37  }  38 
 39     public SwipeListView(Context context, AttributeSet attrs, int defStyle) {  40         super(context, attrs, defStyle);  41         // TODO Auto-generated constructor stub
 42  }  43 
 44  @Override  45     public boolean onInterceptTouchEvent(MotionEvent ev) {  46         float lastX = ev.getX();  47         float lastY = ev.getY();  48         switch (ev.getAction()) {  49         case MotionEvent.ACTION_DOWN:  50 
 51             mIsHorizontal = false;  52             
 53             mFirstX = lastX;  54             mFirstY = lastY;  55             int motionPosition = pointToPosition((int) mFirstX, (int) mFirstY);  56 
 57             Log.e(TAG, "onInterceptTouchEvent----->ACTION_DOWN position=" + motionPosition);  58             
 59             if (motionPosition >= 0) {  60                 View currentItemView = getChildAt(motionPosition - getFirstVisiblePosition());  61                 mPreItemView = mCurrentItemView;  62                 mCurrentItemView = currentItemView;  63  }  64             break;  65 
 66         case MotionEvent.ACTION_MOVE:  67             float dx = lastX - mFirstX;  68             float dy = lastY - mFirstY;  69 
 70             if (Math.abs(dx) >= 5 && Math.abs(dy) >= 5) {  71                 return true;  72  }  73             break;  74 
 75         case MotionEvent.ACTION_UP:  76         case MotionEvent.ACTION_CANCEL:  77 
 78             Log.i(TAG, "onInterceptTouchEvent----->ACTION_UP");  79             if (isShown && mPreItemView != mCurrentItemView) {  80                 Log.i(TAG, "1---> hiddenRight");  81  hiddenRight(mPreItemView);  82  }  83             break;  84  }  85 
 86         return super.onInterceptTouchEvent(ev);  87  }  88 
 89  @Override  90     public boolean onTouchEvent(MotionEvent ev) {  91         // TODO Auto-generated method stub
 92         float lastX = ev.getX();  93         float lastY = ev.getY();  94 
 95         switch (ev.getAction()) {  96         case MotionEvent.ACTION_DOWN:  97             Log.i(TAG, "---->ACTION_DOWN");  98             break;  99 
100         case MotionEvent.ACTION_MOVE: 101             float dx = lastX - mFirstX; 102             float dy = lastY - mFirstY; 103 
104             mIsHorizontal = isHorizontalDirectionScroll(dx, dy); 105             
106             if (!mIsHorizontal) { 107                 break; 108  } 109 
110             Log.i(TAG, "onTouchEvent ACTION_MOVE"); 111             
112             if (mIsHorizontal) { 113                 if (isShown && mPreItemView != mCurrentItemView) { 114                     Log.i(TAG, "2---> hiddenRight"); 115 
116  hiddenRight(mPreItemView); 117  } 118             }else { 119                 if (isShown) { 120                     Log.i(TAG, "3---> hiddenRight"); 121 
122  hiddenRight(mPreItemView); 123  } 124  } 125             break; 126         case MotionEvent.ACTION_UP: 127         case MotionEvent.ACTION_CANCEL: 128             Log.i(TAG, "============ACTION_UP"); 129             if (isShown) { 130                 Log.i(TAG, "4---> hiddenRight"); 131 
132  hiddenRight(mPreItemView); 133  } 134 
135             if (mIsHorizontal) { 136                 if (mFirstX - lastX > 30) { 137  showRight(mCurrentItemView); 138                 } else { 139                     Log.i(TAG, "5---> hiddenRight"); 140 
141  hiddenRight(mCurrentItemView); 142  } 143                 return true; 144  } 145             break; 146  } 147 
148         return super.onTouchEvent(ev); 149  } 150 
151     private void showRight(View rightView) { 152         RelativeLayout rl_right=(RelativeLayout)rightView.findViewById(R.id.item_right); 153  rl_right.setVisibility(View.VISIBLE); 154         
155         isShown = true; 156  } 157     
158     private void hiddenRight(View rightView) { 159         
160         RelativeLayout rl_right=(RelativeLayout)rightView.findViewById(R.id.item_right); 161  rl_right.setVisibility(View.GONE); 162         
163         isShown = false; 164  } 165 
166 
167     private boolean isHorizontalDirectionScroll(float dx, float dy) { 168         boolean mIsHorizontal = true; 169 
170         if (Math.abs(dx) > 30 && Math.abs(dx) > 2 * Math.abs(dy)) { 171             mIsHorizontal = true; 172             System.out.println("mIsHorizontal---->" + mIsHorizontal); 173         } else if (Math.abs(dy) > 30 && Math.abs(dy) > 2 * Math.abs(dx)) { 174             mIsHorizontal = false; 175             System.out.println("mIsHorizontal---->" + mIsHorizontal); 176  } 177 
178         return mIsHorizontal; 179  } 180     
181 }

 

WXMessage.java代码如下
 1 package com.example.home.message;  2 
 3 public class WXMessage {  4     private int icon_id;  5     private String title;  6     private String msg;  7     private String time;  8     
 9     public WXMessage(){ 10         
11  } 12     public WXMessage(String title, String msg, String time) { 13         this.title = title; 14         this.msg = msg; 15         this.time = time; 16  } 17     
18     
19     
20     public int getIcon_id() { 21         return icon_id; 22  } 23     public void setIcon_id(int icon_id) { 24         this.icon_id = icon_id; 25  } 26     
27     
28     
29     public String getTitle() { 30         return title; 31  } 32     public void setTitle(String title) { 33         this.title = title; 34  } 35     
36     
37     
38     public String getMsg() { 39         return msg; 40  } 41     public void setMsg(String msg) { 42         this.msg = msg; 43  } 44     
45     
46     
47     public String getTime() { 48         return time; 49  } 50     public void setTime(String time) { 51         this.time = time; 52  } 53     
54 }
 

 

以下是xml代码

activity_message.xml

 

 1 <?xml version="1.0" encoding="utf-8"?>
 2 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
 3     android:layout_width="match_parent"
 4     android:layout_height="match_parent">
 5 
 6 
 7 
 8     <com.example.home.message.SwipeListView
 9         android:id="@+id/mListView"
10         android:layout_width="match_parent"
11         android:layout_height="match_parent"
12         android:cacheColorHint="@android:color/transparent"/>
13 
14 </RelativeLayout>

 

activity_message_chatlist.xml

 

  1 <?xml version="1.0" encoding="utf-8"?>
  2 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
  3     android:layout_width="match_parent"
  4     android:layout_height="wrap_content">
  5 
  6 
  7     <RelativeLayout
  8         android:id="@+id/message_top_bar"
  9         android:layout_width="match_parent"
 10         android:layout_height="40dp"
 11         android:background="#87CEFA"
 12         >
 13 
 14         <TextView
 15             android:id="@+id/message_txt_topbar"
 16             android:layout_width="match_parent"
 17             android:layout_height="match_parent"
 18             android:layout_centerInParent="true"
 19             android:gravity="center"
 20             android:text="消息"
 21             android:textColor="#ffff"
 22             android:textSize="18sp" />
 23 
 24         <ImageButton
 25             android:id="@+id/addfriend"
 26             android:layout_width="wrap_content"
 27             android:layout_height="wrap_content"
 28             android:layout_marginRight="10dp"
 29             android:layout_alignParentRight="true"
 30             android:layout_marginTop="6dp"
 31             android:background="@drawable/addf"
 32             android:onClick="onClick"/>
 33 
 34 
 35     </RelativeLayout>
 36 
 37     <RelativeLayout
 38         android:id="@+id/item_left"
 39         android:layout_width="match_parent"
 40         android:layout_height="wrap_content"
 41         android:background="#FFFFFF"
 42         android:layout_marginTop="40dp"
 43         android:paddingBottom="5dp"
 44         android:paddingLeft="10dp"
 45         android:paddingRight="10dp"
 46         android:paddingTop="5dp" >
 47 
 48         <ImageView
 49             android:id="@+id/iv_icon"
 50             android:layout_width="50dp"
 51             android:layout_height="50dp"
 52             android:layout_marginRight="5dp"
 53             android:src="@drawable/chat1" />
 54 
 55         <TextView
 56             android:id="@+id/tv_title"
 57             android:layout_width="wrap_content"
 58             android:layout_height="wrap_content"
 59             android:layout_toRightOf="@id/iv_icon"
 60             android:textColor="@color/black"
 61             android:textSize="15sp" />
 62 
 63         <TextView
 64             android:id="@+id/tv_msg"
 65             android:layout_width="wrap_content"
 66             android:layout_height="wrap_content"
 67             android:layout_alignBottom="@id/iv_icon"
 68             android:layout_alignLeft="@id/tv_title"
 69             android:singleLine="true"
 70             android:ellipsize="end"
 71             android:textColor="#BEBEBE" />
 72 
 73         <TextView
 74             android:id="@+id/tv_time"
 75             android:layout_width="wrap_content"
 76             android:layout_height="wrap_content"
 77             android:layout_alignParentRight="true"
 78             android:layout_alignTop="@id/tv_title"
 79             android:textColor="#BEBEBE" />
 80     </RelativeLayout>
 81 
 82     <RelativeLayout
 83         android:id="@+id/item_right"
 84         android:layout_width="60dp"
 85         android:layout_height="30dp"
 86         android:layout_alignParentRight="true"
 87         android:layout_centerVertical="true"
 88         android:layout_marginRight="10dp"
 89         android:layout_marginTop="120dp"
 90         android:background="#FF0000"
 91         android:visibility="gone" >
 92 
 93         <TextView
 94             android:id="@+id/item_right_txt"
 95             android:layout_width="wrap_content"
 96             android:layout_height="wrap_content"
 97             android:layout_centerInParent="true"
 98             android:gravity="center"
 99             android:text="删除"
100             android:textSize="16sp"
101             android:textColor="#FFFFFF" />
102     </RelativeLayout>
103 
104 
105 </RelativeLayout>

 

activity_message_addfriend.xml

 

  1 <?xml version="1.0" encoding="utf-8"?>
  2 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
  3     android:layout_width="match_parent"
  4     android:layout_height="match_parent"
  5     android:orientation="vertical" >
  6     
  7     <LinearLayout
  8         android:layout_width="match_parent"
  9         android:layout_height="40dp"
 10         android:background="#87CEFA"
 11         android:gravity="center"
 12         android:orientation="horizontal" >
 13 
 14 
 15         <ImageButton
 16             android:id="@+id/iv_back3"
 17             android:layout_width="wrap_content"
 18             android:layout_height="wrap_content"
 19             android:layout_marginLeft="5dp"
 20             android:background="@drawable/nf"
 21             android:onClick="onClick"
 22             />
 23         <TextView
 24             android:layout_width="0dp"
 25             android:layout_height="wrap_content"
 26             android:layout_weight="1"
 27             android:gravity="center"
 28             android:textColor="#ffffff"
 29             android:textSize="15sp"
 30             android:text="添加朋友"/>
 31 
 32         
 33     </LinearLayout>
 34     
 35     <LinearLayout
 36         android:layout_height="50dp"
 37         android:layout_width="match_parent">
 38 
 39         <AutoCompleteTextView
 40             android:id="@+id/edsearch"
 41             android:gravity="center"
 42             android:layout_width="match_parent"
 43             android:layout_height="50dp"
 44             android:layout_weight="1"
 45             android:hint="学号/手机号"
 46             android:completionThreshold="1"
 47             android:textSize="20sp"
 48             android:inputType="text"
 49             android:lines="1"
 50             android:background="@drawable/yuanjiao"
 51             android:drawableLeft="@drawable/sousuo1" />
 52 
 53 
 54 
 55     </LinearLayout>
 56 
 57 
 58     <RelativeLayout
 59         android:layout_height="320dp"
 60         android:layout_width="match_parent"
 61         android:layout_marginTop="37dp">
 62 
 63         <RelativeLayout
 64             android:layout_height="60dp"
 65             android:layout_width="match_parent"
 66             android:layout_marginTop="15dp"
 67             android:background="@color/white">
 68 
 69             <ImageView
 70                 android:layout_height="54dp"
 71                 android:layout_width="54dp"
 72                 android:layout_marginLeft="10dp"
 73                 android:layout_marginTop="3dp"
 74                 android:background="@drawable/leida">
 75 
 76             </ImageView>
 77 
 78             <TextView
 79                 android:layout_width="100dp"
 80                 android:layout_height="30dp"
 81                 android:layout_marginLeft="80dp"
 82                 android:layout_marginTop="5dp"
 83                 android:text="雷达加朋友"
 84                 android:textSize="18dp"
 85                 android:textColor="@color/black">
 86 
 87             </TextView>
 88 
 89             <TextView
 90                 android:layout_width="100dp"
 91                 android:layout_height="18dp"
 92                 android:layout_marginLeft="80dp"
 93                 android:layout_marginTop="35dp"
 94                 android:text="添加身边的朋友"
 95                 android:textSize="14dp"
 96                 android:textColor="#696969">
 97 
 98             </TextView>
 99 
100             <ImageView
101                 android:layout_height="30dp"
102                 android:layout_width="30dp"
103                 android:layout_marginRight="15dp"
104                 android:layout_alignParentRight="true"
105                 android:layout_marginTop="15dp"
106                 android:background="@drawable/arrow">
107 
108             </ImageView>
109 
110 
111         </RelativeLayout>
112 
113 
114         <RelativeLayout
115             android:layout_height="60dp"
116             android:layout_width="match_parent"
117             android:layout_marginTop="90dp"
118             android:background="@color/white">
119 
120             <ImageView
121                 android:layout_height="54dp"
122                 android:layout_width="54dp"
123                 android:layout_marginLeft="10dp"
124                 android:layout_marginTop="3dp"
125                 android:background="@drawable/jianqun">
126 
127             </ImageView>
128 
129 
130             <TextView
131                 android:layout_width="100dp"
132                 android:layout_height="30dp"
133                 android:layout_marginLeft="80dp"
134                 android:layout_marginTop="5dp"
135                 android:text="面对面建群"
136                 android:textSize="18dp"
137                 android:textColor="@color/black">
138 
139             </TextView>
140 
141             <TextView
142                 android:layout_width="200dp"
143                 android:layout_height="18dp"
144                 android:layout_marginLeft="80dp"
145                 android:layout_marginTop="35dp"
146                 android:text="与身边的朋友进入同一个群聊"
147                 android:textSize="14dp"
148                 android:textColor="#696969">
149 
150             </TextView>
151 
152             <ImageView
153                 android:layout_height="30dp"
154                 android:layout_width="30dp"
155                 android:layout_marginRight="15dp"
156                 android:layout_alignParentRight="true"
157                 android:layout_marginTop="15dp"
158                 android:background="@drawable/arrow">
159 
160             </ImageView>
161 
162         </RelativeLayout>
163 
164         <RelativeLayout
165             android:layout_height="60dp"
166             android:layout_width="match_parent"
167             android:layout_marginTop="165dp"
168             android:background="@color/white">
169 
170 
171             <ImageView
172                 android:layout_height="54dp"
173                 android:layout_width="54dp"
174                 android:layout_marginLeft="10dp"
175                 android:layout_marginTop="3dp"
176                 android:background="@drawable/lianxi">
177 
178             </ImageView>
179 
180 
181             <TextView
182                 android:layout_width="100dp"
183                 android:layout_height="30dp"
184                 android:layout_marginLeft="80dp"
185                 android:layout_marginTop="5dp"
186                 android:text="手机联系人"
187                 android:textSize="18dp"
188                 android:textColor="@color/black">
189 
190             </TextView>
191 
192             <TextView
193                 android:layout_width="130dp"
194                 android:layout_height="18dp"
195                 android:layout_marginLeft="80dp"
196                 android:layout_marginTop="35dp"
197                 android:text="添加通讯录中的好友"
198                 android:textSize="14dp"
199                 android:textColor="#696969">
200 
201             </TextView>
202 
203             <ImageView
204                 android:layout_height="30dp"
205                 android:layout_width="30dp"
206                 android:layout_marginRight="15dp"
207                 android:layout_alignParentRight="true"
208                 android:layout_marginTop="15dp"
209                 android:background="@drawable/arrow">
210 
211             </ImageView>
212 
213 
214 
215         </RelativeLayout>
216 
217         <RelativeLayout
218             android:layout_height="60dp"
219             android:layout_width="match_parent"
220             android:layout_marginTop="240dp"
221             android:background="@color/white">
222 
223             <ImageView
224                 android:layout_height="54dp"
225                 android:layout_width="54dp"
226                 android:layout_marginLeft="10dp"
227                 android:layout_marginTop="3dp"
228                 android:background="@drawable/gong">
229 
230             </ImageView>
231 
232 
233             <TextView
234                 android:layout_width="100dp"
235                 android:layout_height="30dp"
236                 android:layout_marginLeft="80dp"
237                 android:layout_marginTop="5dp"
238                 android:text="公众号"
239                 android:textSize="18dp"
240                 android:textColor="@color/black">
241 
242             </TextView>
243 
244             <TextView
245                 android:layout_width="150dp"
246                 android:layout_height="18dp"
247                 android:layout_marginLeft="80dp"
248                 android:layout_marginTop="35dp"
249                 android:text="获取更多资讯和服务"
250                 android:textSize="14dp"
251                 android:textColor="#696969">
252 
253             </TextView>
254 
255             <ImageView
256                 android:layout_height="30dp"
257                 android:layout_width="30dp"
258                 android:layout_marginRight="15dp"
259                 android:layout_alignParentRight="true"
260                 android:layout_marginTop="15dp"
261                 android:background="@drawable/arrow">
262 
263             </ImageView>
264 
265         </RelativeLayout>
266         
267 
268     </RelativeLayout>
269 
270 
271 </LinearLayout>

 

有帮到你的话,点个推荐吧~


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM