日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

模拟手机QQ滑动删除消息

發(fā)布時間:2025/3/17 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 模拟手机QQ滑动删除消息 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

2019獨角獸企業(yè)重金招聘Python工程師標準>>>


package?com.example.srolltest;import?java.util.ArrayList; import?java.util.List;import?android.app.Activity; import?android.os.Bundle; import?android.util.DisplayMetrics; import?android.view.LayoutInflater; import?android.view.MotionEvent; import?android.view.View; import?android.view.View.OnClickListener; import?android.view.View.OnTouchListener; import?android.view.ViewGroup; import?android.widget.BaseAdapter; import?android.widget.Button; import?android.widget.HorizontalScrollView; import?android.widget.ListView; import?android.widget.TextView;public?class?MainActivity?extends?Activity?{private?ListView?listView;private?Myadapter?adapter;private?List<String>?datas;private?int?screenWidth;@Overrideprotected?void?onCreate(Bundle?savedInstanceState)?{super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);listView?=?(ListView)?findViewById(R.id.listView);DisplayMetrics?outMetrics?=?new?DisplayMetrics();getWindowManager().getDefaultDisplay().getMetrics(outMetrics);screenWidth?=?outMetrics.widthPixels;initDatas();adapter?=?new?Myadapter();listView.setAdapter(adapter);}private?void?initDatas()?{//?TODO?Auto-generated?method?stubdatas?=?new?ArrayList<String>();for?(int?i?=?0;?i?<?20;?i++)?{datas.add("刪除我吧,刪除我吧"?+?i);}}class?Myadapter?extends?BaseAdapter?{@Overridepublic?int?getCount()?{//?TODO?Auto-generated?method?stubreturn?datas.size();}@Overridepublic?Object?getItem(int?position)?{//?TODO?Auto-generated?method?stubreturn?datas.get(position);}@Overridepublic?long?getItemId(int?position)?{//?TODO?Auto-generated?method?stubreturn?position;}@Overridepublic?View?getView(final?int?position,?View?convertView,?ViewGroup?parent)?{//?TODO?Auto-generated?method?stubfinal?ViewHolder?viewHolder;if?(convertView?==?null)?{convertView?=?LayoutInflater.from(MainActivity.this).inflate(R.layout.item_main,?null);viewHolder?=?new?ViewHolder();viewHolder.horizontalScrollView?=?(HorizontalScrollView)?convertView.findViewById(R.id.horizontalScrollView);viewHolder.tvContexTextView?=?(TextView)?convertView.findViewById(R.id.tv_context);viewHolder.btnDelete?=?(Button)?convertView.findViewById(R.id.btn_delete);viewHolder.toTop?=?(Button)?convertView.findViewById(R.id.btn_toTop);convertView.setTag(viewHolder);}?else?{viewHolder?=?(ViewHolder)?convertView.getTag();}viewHolder.tvContexTextView.setText(datas.get(position));viewHolder.tvContexTextView.setWidth(screenWidth);if?(viewHolder.horizontalScrollView.getScrollX()?>?0)?{viewHolder.horizontalScrollView.smoothScrollTo(0,?0);}convertView.setOnTouchListener(new?OnTouchListener()?{@Overridepublic?boolean?onTouch(View?v,?MotionEvent?event)?{switch?(event.getAction())?{case?MotionEvent.ACTION_UP:int?actionWidth?=?viewHolder.btnDelete.getWidth()+viewHolder.toTop.getWidth();int?scrollX?=viewHolder.horizontalScrollView.getScrollX();if(scrollX>actionWidth/2){viewHolder.horizontalScrollView.smoothScrollTo(actionWidth,?0);}else?{viewHolder.horizontalScrollView.smoothScrollTo(0,?0);}return?true;}return?false;}});viewHolder.tvContexTextView.setOnClickListener(new?OnClickListener()?{@Overridepublic?void?onClick(View?v)?{//?TODO?Auto-generated?method?stubnotifyDataSetChanged();}});viewHolder.btnDelete.setOnClickListener(new?OnClickListener()?{@Overridepublic?void?onClick(View?v)?{datas.remove(position);notifyDataSetChanged();}});viewHolder.toTop.setOnClickListener(new?OnClickListener()?{@Overridepublic?void?onClick(View?v)?{String?temp?=?datas.get(0);datas.set(0,?datas.get(position));datas.set(position,?temp);notifyDataSetChanged();}});return?convertView;}class?ViewHolder?{HorizontalScrollView?horizontalScrollView;TextView?tvContexTextView;Button?btnDelete;Button?toTop;}} }

activity_main.xml

<LinearLayout?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"android:orientation="vertical"?><ListViewandroid:id="@+id/listView"android:layout_width="wrap_content"android:layout_height="wrap_content"android:fastScrollEnabled="true"?/></LinearLayout>

item_main.xml

<?xml?version="1.0"?encoding="utf-8"?> <HorizontalScrollView?xmlns:android="http://schemas.android.com/apk/res/android"android:id="@+id/horizontalScrollView"android:layout_width="match_parent"android:layout_height="match_parent"android:background="#8492B4"android:scrollbars="none"?><LinearLayoutandroid:layout_width="wrap_content"android:layout_height="match_parent"android:orientation="horizontal"?><TextViewandroid:id="@+id/tv_context"android:layout_width="match_parent"android:layout_height="match_parent"android:gravity="center"?/><Buttonandroid:id="@+id/btn_delete"android:layout_width="wrap_content"android:layout_height="match_parent"android:background="#33ff0000"android:text="刪除"?/><Buttonandroid:id="@+id/btn_toTop"android:layout_width="wrap_content"android:layout_height="match_parent"android:background="#3300ff00"android:text="置頂"?/></LinearLayout></HorizontalScrollView>


轉(zhuǎn)載于:https://my.oschina.net/u/2282721/blog/483295

總結(jié)

以上是生活随笔為你收集整理的模拟手机QQ滑动删除消息的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。