Andriod学习教程之滑动布局(14)

Andriod学习教程之滑动布局(14),第1张

概述本文实例为大家分享了Andriod滑动布局的具体代码,供大家参考,具体内容如下

本文实例为大家分享了Andriod滑动布局的具体代码,供大家参考,具体内容如下

MainActivity.java代码:

package siso.swipelayoutdemo;import androID.app.Activity;import androID.content.Intent;import androID.graphics.color;import androID.support.v7.app.AppCompatActivity;import androID.os.Bundle;import androID.util.Log;import androID.vIEw.Menu;import androID.vIEw.MenuItem;import androID.vIEw.VIEw;import androID.Widget.Toast;import com.nineoldandroIDs.vIEw.VIEwHelper;import siso.swipelib.SwipeLayout;public class MainActivity extends AppCompatActivity { private SwipeLayout sample1,sample2,sample3; @OverrIDe protected voID onCreate(Bundle savedInstanceState) {  super.onCreate(savedInstanceState);  setContentVIEw(R.layout.main);  sample1 = (SwipeLayout) findVIEwByID(R.ID.sample1);  sample1.setShowMode(SwipeLayout.ShowMode.PullOut);  VIEw starBottVIEw = sample1.findVIEwByID(R.ID.starbott);  sample1.addDrag(SwipeLayout.DragEdge.left,sample1.findVIEwByID(R.ID.bottom_wrapper));  sample1.addDrag(SwipeLayout.DragEdge.Right,sample1.findVIEwByID(R.ID.bottom_wrapper_2));  sample1.addDrag(SwipeLayout.DragEdge.top,starBottVIEw);  sample1.addDrag(SwipeLayout.DragEdge.Bottom,starBottVIEw);  sample1.addRevealListener(R.ID.delete,new SwipeLayout.OnRevealListener() {   @OverrIDe   public voID onReveal(VIEw child,SwipeLayout.DragEdge edge,float fraction,int distance) {   }  });  sample1.getSurfaceVIEw().setonClickListener(new VIEw.OnClickListener() {   @OverrIDe   public voID onClick(VIEw v) {    Toast.makeText(MainActivity.this,"Click on surface",Toast.LENGTH_SHORT).show();    Log.d(MainActivity.class.getname(),"click on surface");   }  });  sample1.getSurfaceVIEw().setonLongClickListener(new VIEw.OnLongClickListener() {   @OverrIDe   public boolean onLongClick(VIEw v) {    Toast.makeText(MainActivity.this,"longClick on surface","longClick on surface");    return true;   }  });  sample1.findVIEwByID(R.ID.star2).setonClickListener(new VIEw.OnClickListener() {   @OverrIDe   public voID onClick(VIEw v) {    Toast.makeText(MainActivity.this,"Star",Toast.LENGTH_SHORT).show();   }  });  sample1.findVIEwByID(R.ID.trash2).setonClickListener(new VIEw.OnClickListener() {   @OverrIDe   public voID onClick(VIEw v) {    Toast.makeText(MainActivity.this,"Trash Bin",Toast.LENGTH_SHORT).show();   }  });  sample1.findVIEwByID(R.ID.magnifIEr2).setonClickListener(new VIEw.OnClickListener() {   @OverrIDe   public voID onClick(VIEw v) {    Toast.makeText(MainActivity.this,"MagnifIEr",Toast.LENGTH_SHORT).show();   }  });  sample1.addRevealListener(R.ID.starbott,int distance) {    VIEw star = child.findVIEwByID(R.ID.star);    float d = child.getHeight() / 2 - star.getHeight() / 2;    VIEwHelper.setTranslationY(star,d * fraction);    VIEwHelper.setScaleX(star,fraction + 0.6f);    VIEwHelper.setScaleY(star,fraction + 0.6f);   }  });  //sample2  sample2 = (SwipeLayout) findVIEwByID(R.ID.sample2);  sample2.setShowMode(SwipeLayout.ShowMode.LayDown);  sample2.addDrag(SwipeLayout.DragEdge.Right,sample2.findVIEwWithTag("Bottom2")); sample2.findVIEwByID(R.ID.star).setonClickListener(new VIEw.OnClickListener() {   @OverrIDe   public voID onClick(VIEw v) {    Toast.makeText(MainActivity.this,Toast.LENGTH_SHORT).show();   }  });  sample2.findVIEwByID(R.ID.trash).setonClickListener(new VIEw.OnClickListener() {   @OverrIDe   public voID onClick(VIEw v) {    Toast.makeText(MainActivity.this,Toast.LENGTH_SHORT).show();   }  });  sample2.findVIEwByID(R.ID.magnifIEr).setonClickListener(new VIEw.OnClickListener() {   @OverrIDe   public voID onClick(VIEw v) {    Toast.makeText(MainActivity.this,Toast.LENGTH_SHORT).show();   }  });  sample2.findVIEwByID(R.ID.click).setonClickListener(new VIEw.OnClickListener() {   @OverrIDe   public voID onClick(VIEw v) {    Toast.makeText(MainActivity.this,"Yo",Toast.LENGTH_SHORT).show();   }  });  sample2.getSurfaceVIEw().setonClickListener(new VIEw.OnClickListener() {   @OverrIDe   public voID onClick(VIEw v) {    Toast.makeText(MainActivity.this,Toast.LENGTH_SHORT).show();   }  });  //sample3  sample3 = (SwipeLayout) findVIEwByID(R.ID.sample3);  sample3.addDrag(SwipeLayout.DragEdge.top,sample3.findVIEwWithTag("Bottom3"));  sample3.addRevealListener(R.ID.bottom_wrapper_child1,fraction + 0.6f);    int c = (Integer) evaluate(fraction,color.parsecolor("#dddddd"),color.parsecolor("#4C535B"));    child.setBackgroundcolor(c);   }  });  sample3.findVIEwByID(R.ID.bottom_wrapper_child1).setonClickListener(new VIEw.OnClickListener() {   @OverrIDe   public voID onClick(VIEw v) {    Toast.makeText(MainActivity.this,"Yo!",Toast.LENGTH_SHORT).show();   }  });  sample3.getSurfaceVIEw().setonClickListener(new VIEw.OnClickListener() {   @OverrIDe   public voID onClick(VIEw v) {    Toast.makeText(MainActivity.this,Toast.LENGTH_SHORT).show();   }  }); } @OverrIDe public boolean onCreateOptionsMenu(Menu menu) {  getMenuInflater().inflate(R.menu.my,menu);  return true; } @OverrIDe public boolean onoptionsItemSelected(MenuItem item) {  int ID = item.getItemID();  if (ID == R.ID.action_ListvIEw) {   startActivity(new Intent(this,ListVIEwExample.class));   return true;  } else if (ID == R.ID.action_grIDvIEw) {   startActivity(new Intent(this,GrIDVIEwExample.class));   return true;  } else if (ID == R.ID.action_nested) {   startActivity(new Intent(this,nestedExample.class));   return true;  } else if (ID == R.ID.action_recycler) {   startActivity(new Intent(this,RecyclerVIEwExample.class));  }  return super.onoptionsItemSelected(item); } /* color Transition method.  */ public Object evaluate(float fraction,Object startValue,Object endValue) {  int startInt = (Integer) startValue;  int startA = (startInt >> 24) & 0xff;  int startR = (startInt >> 16) & 0xff;  int startG = (startInt >> 8) & 0xff;  int startB = startInt & 0xff;  int endInt = (Integer) endValue;  int endA = (endInt >> 24) & 0xff;  int endR = (endInt >> 16) & 0xff;  int endG = (endInt >> 8) & 0xff;  int endB = endInt & 0xff;  return (int) ((startA + (int) (fraction * (endA - startA))) << 24) |    (int) ((startR + (int) (fraction * (endR - startR))) << 16) |    (int) ((startG + (int) (fraction * (endG - startG))) << 8) |    (int) ((startB + (int) (fraction * (endB - startB)))); }}

nestedExample.java代码:

package siso.swipelayoutdemo;import androID.app.Activity;import androID.os.Bundle;import androID.vIEw.VIEw;import androID.Widget.Toast;import siso.swipelib.SwipeLayout;public class nestedExample extends Activity{ @OverrIDe protected voID onCreate(Bundle savedInstanceState) {  super.onCreate(savedInstanceState);  setContentVIEw(R.layout.complicate_layout);   SwipeLayout swipeLayout = (SwipeLayout)findVIEwByID(R.ID.test_swipe_swipe);  swipeLayout.setondoubleclickListener(new SwipeLayout.DoubleClickListener() {   @OverrIDe   public voID ondoubleclick(SwipeLayout layout,boolean surface) {    Toast.makeText(getApplicationContext(),"DoubleClick",Toast.LENGTH_SHORT).show();   }  });  swipeLayout.findVIEwByID(R.ID.trash).setonClickListener(new VIEw.OnClickListener() {   @OverrIDe   public voID onClick(VIEw v) {    Toast.makeText(getApplicationContext(),"Click",Toast.LENGTH_SHORT).show();   }  }); }}

RecyclerVIEwExample.java代码:

package siso.swipelayoutdemo;import androID.app.Actionbar;import androID.app.Activity;import androID.content.Intent;import androID.os.Build;import androID.os.Bundle;import androID.support.v7.Widget.linearlayoutmanager;import androID.support.v7.Widget.RecyclerVIEw;import androID.util.Log;import androID.vIEw.Menu;import androID.vIEw.MenuItem;import java.util.ArrayList;import java.util.Arrays;import jp.wasabeef.recyclervIEw.animators.FadeInleftAnimator;import siso.swipelayoutdemo.adapter.RecyclerVIEwAdapter;import siso.swipelayoutdemo.adapter.util.divIDerItemdecoration;import siso.swipelib.util.Attributes;public class RecyclerVIEwExample extends Activity { private RecyclerVIEw recyclerVIEw; private RecyclerVIEw.Adapter mAdapter; private ArrayList<String> mDataSet; @OverrIDe protected voID onCreate(Bundle savedInstanceState) {  super.onCreate(savedInstanceState);  setContentVIEw(R.layout.recyclervIEw);  recyclerVIEw = (RecyclerVIEw) findVIEwByID(R.ID.recycler_vIEw);  if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {   Actionbar actionbar = getActionbar();   if (actionbar != null) {    actionbar.setTitle("RecyclerVIEw");   }  }  // Layout Managers:  recyclerVIEw.setLayoutManager(new linearlayoutmanager(this));  // Item Decorator:  recyclerVIEw.addItemdecoration(new divIDerItemdecoration(getResources().getDrawable(R.drawable.divIDer)));  recyclerVIEw.setItemAnimator(new FadeInleftAnimator());  // Adapter:  String[] adapterData = new String[]{"Alabama","Alaska","Arizona","Arkansas","California","colorado","Connecticut","Delaware","FlorIDa","Georgia","Hawaii","IDaho","Illinois","Indiana","Iowa","Kansas","Kentucky","Louisiana","Maine","Maryland","Massachusetts","Michigan","Minnesota","Mississippi","Missouri","Montana","Nebraska","Nevada","New Hampshire","New Jersey","New Mexico","New York","north Carolina","north Dakota","Ohio","Oklahoma","Oregon","Pennsylvania","Rhode Island","South Carolina","South Dakota","Tennessee","Texas","Utah","Vermont","Virginia","Washington","West Virginia","Wisconsin","Wyoming"};  mDataSet = new ArrayList<String>(Arrays.asList(adapterData));  mAdapter = new RecyclerVIEwAdapter(this,mDataSet);  ((RecyclerVIEwAdapter) mAdapter).setMode(Attributes.Mode.Single);  recyclerVIEw.setAdapter(mAdapter);  /* Listeners */  recyclerVIEw.setonScrollListener(onScrollListener); } RecyclerVIEw.OnScrollListener onScrollListener = new RecyclerVIEw.OnScrollListener() {  @OverrIDe  public voID onScrollStateChanged(RecyclerVIEw recyclerVIEw,int newState) {   super.onScrollStateChanged(recyclerVIEw,newState);   Log.e("ListVIEw","onScrollStateChanged");  }  @OverrIDe  public voID onScrolled(RecyclerVIEw recyclerVIEw,int dx,int dy) {   super.onScrolled(recyclerVIEw,dx,dy);  } }; @OverrIDe public boolean onCreateOptionsMenu(Menu menu) {  getMenuInflater().inflate(R.menu.my,ListVIEwExample.class));   finish();   return true;  } else if (ID == R.ID.action_grIDvIEw) {   startActivity(new Intent(this,GrIDVIEwExample.class));   finish();   return true;  }  return super.onoptionsItemSelected(item); }}

ListVIEwExample.java代码:

package siso.swipelayoutdemo;import androID.app.Actionbar;import androID.app.Activity;import androID.content.Context;import androID.content.Intent;import androID.os.Build;import androID.os.Bundle;import androID.util.Log;import androID.vIEw.Menu;import androID.vIEw.MenuItem;import androID.vIEw.MotionEvent;import androID.vIEw.VIEw;import androID.Widget.AbsListVIEw;import androID.Widget.AdapterVIEw;import androID.Widget.ListVIEw;import androID.Widget.Toast;import siso.swipelayoutdemo.adapter.ListVIEwAdapter;import siso.swipelib.SwipeLayout;import siso.swipelib.util.Attributes;public class ListVIEwExample extends Activity { private ListVIEw mListVIEw; private ListVIEwAdapter mAdapter; private Context mContext = this; @OverrIDe protected voID onCreate(Bundle savedInstanceState) {  super.onCreate(savedInstanceState);  setContentVIEw(R.layout.ListvIEw);  mListVIEw = (ListVIEw) findVIEwByID(R.ID.ListvIEw);  if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {   Actionbar actionbar = getActionbar();   if (actionbar != null) {    actionbar.setTitle("ListVIEw");   }  }  mAdapter = new ListVIEwAdapter(this);  mListVIEw.setAdapter(mAdapter);  mAdapter.setMode(Attributes.Mode.Single);  mListVIEw.setonItemClickListener(new AdapterVIEw.OnItemClickListener() {   @OverrIDe   public voID onItemClick(AdapterVIEw<?> parent,VIEw vIEw,int position,long ID) {    ((SwipeLayout)(mListVIEw.getChildAt(position - mListVIEw.getFirstVisibleposition()))).open(true);   }  });  mListVIEw.setontouchListener(new VIEw.OntouchListener() {   @OverrIDe   public boolean ontouch(VIEw v,MotionEvent event) {    Log.e("ListVIEw","Ontouch");    return false;   }  });  mListVIEw.setonItemLongClickListener(new AdapterVIEw.OnItemLongClickListener() {   @OverrIDe   public boolean onItemLongClick(AdapterVIEw<?> parent,long ID) {    Toast.makeText(mContext,"OnItemLongClickListener",Toast.LENGTH_SHORT).show();    return true;   }  });  mListVIEw.setonScrollListener(new AbsListVIEw.OnScrollListener() {   @OverrIDe   public voID onScrollStateChanged(AbsListVIEw vIEw,int scrollState) {    Log.e("ListVIEw","onScrollStateChanged");   }   @OverrIDe   public voID onScroll(AbsListVIEw vIEw,int firstVisibleItem,int visibleItemCount,int totalitemCount) {   }  });  mListVIEw.setonItemSelectedListener(new AdapterVIEw.OnItemSelectedListener() {   @OverrIDe   public voID onItemSelected(AdapterVIEw<?> parent,long ID) {    Log.e("ListVIEw","onItemSelected:" + position);   }   @OverrIDe   public voID onnothingSelected(AdapterVIEw<?> parent) {    Log.e("ListVIEw","onnothingSelected:");   }  }); } @OverrIDe public boolean onCreateOptionsMenu(Menu menu) {  getMenuInflater().inflate(R.menu.my,GrIDVIEwExample.class));   finish();   return true;  } else if (ID == R.ID.action_recycler) {   startActivity(new Intent(this,RecyclerVIEwExample.class));   finish();   return true;  }  return super.onoptionsItemSelected(item); }}

GrIDVIEwExample.java代码:

package siso.swipelayoutdemo;import androID.app.Activity;import androID.os.Bundle;import androID.util.Log;import androID.vIEw.VIEw;import androID.Widget.AdapterVIEw;import androID.Widget.GrIDVIEw;import siso.swipelayoutdemo.adapter.GrIDVIEwAdapter;import siso.swipelib.util.Attributes;public class GrIDVIEwExample extends Activity{ @OverrIDe protected voID onCreate(Bundle savedInstanceState) {  super.onCreate(savedInstanceState);  setContentVIEw(R.layout.grIDvIEw);  final GrIDVIEw grIDVIEw = (GrIDVIEw)findVIEwByID(R.ID.grIDvIEw);  final GrIDVIEwAdapter adapter = new GrIDVIEwAdapter(this);  adapter.setMode(Attributes.Mode.Multiple);  grIDVIEw.setAdapter(adapter);  grIDVIEw.setSelected(false);  grIDVIEw.setonItemLongClickListener(new AdapterVIEw.OnItemLongClickListener() {   @OverrIDe   public boolean onItemLongClick(AdapterVIEw<?> parent,long ID) {    Log.e("onItemLongClick","onItemLongClick:" + position);    return false;   }  });  grIDVIEw.setonItemClickListener(new AdapterVIEw.OnItemClickListener() {   @OverrIDe   public voID onItemClick(AdapterVIEw<?> parent,long ID) {    Log.e("onItemClick","onItemClick:" + position);   }  });  grIDVIEw.setonItemSelectedListener(new AdapterVIEw.OnItemSelectedListener() {   @OverrIDe   public voID onItemSelected(AdapterVIEw<?> parent,long ID) {    Log.e("onItemSelected","onItemSelected:" + position);   }   @OverrIDe   public voID onnothingSelected(AdapterVIEw<?> parent) {   }  }); }}

app项目结构:

Andriod类库项目结构:

build.gradle

apply plugin: 'com.androID.application'androID { compileSdkVersion 23 buildToolsversion "23.0.1" defaultConfig {  applicationID "siso.swipelayoutdemo"  minSdkVersion 22  targetSdkVersion 22  versionCode 1  versionname "1.0" } buildTypes {  release {   MinifyEnabled false   proguardfiles getDefaultProguardfile('proguard-androID.txt'),'proguard-rules.pro'  } }}dependencIEs { compile filetree(include: ['*.jar'],dir: 'libs') testCompile 'junit:junit:4.12' compile 'com.androID.support:appcompat-v7:23.0.1' compile project(path: ':swipelib') compile 'com.androID.support:recyclervIEw-v7:23.3.0' compile 'com.daimajia.easing:library:1.0.0@aar' compile 'com.daimajia.androIDanimations:library:1.1.2@aar' compile 'com.nineoldandroIDs:library:2.4.0' compile 'jp.wasabeef:recyclervIEw-animators:1.0.3@aar'}

运行结果如图:

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程小技巧。

总结

以上是内存溢出为你收集整理的Andriod学习教程之滑动布局(14)全部内容,希望文章能够帮你解决Andriod学习教程之滑动布局(14)所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1147712.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-31
下一篇2022-05-31

发表评论

登录后才能评论

评论列表(0条)

    保存