• StackView实现叠加在一起的图片循环移动像循环队列一样


    MainActivity.java

    1. public class MainActivity extends Activity
    2. {
    3.  
    4. StackView stackView;
    5. int[] imageIds=new int[]
    6. {R.drawable.bomb5,R.drawable.bomb6,R.drawable.bomb7,R.drawable.bomb8,
    7. R.drawable.bomb9,R.drawable.bomb10,R.drawable.bomb11,R.drawable.bomb12,R.drawable.bomb13,
    8. R.drawable.bomb14,R.drawable.bomb15,R.drawable.bomb16};
    9.  
    10. @Override
    11. protected void onCreate(Bundle savedInstanceState) {
    12. super.onCreate(savedInstanceState);
    13. setContentView(R.layout.main);
    14.  
    15. stackView = (StackView) findViewById(R.id.mStackView);
    16. List<Map<String, Object>> listItems = new ArrayList<Map<String, Object>>();
    17. for (int i=0;i<imageIds.length;i++) {
    18. Map<String, Object> listItem=new HashMap<String, Object>();
    19. listItem.put("image",imageIds[i]);
    20. listItems.add(listItem);
    21. }
    22.  
    23. SimpleAdapter simpleAdapter=new SimpleAdapter(this,listItems,
    24. R.layout.cell,new String[] {"image"},new int[] {R.id.image1});
    25. stackView.setAdapter(simpleAdapter);
    26.  
    27.  
    28. }
    29. public void prev(View view) {
    30. stackView.showPrevious();
    31. }
    32.  
    33. public void next(View view) {
    34. stackView.showNext();
    35.  
    36. }
    37. }

    XML文件

    1. <?xml version="1.0" encoding="utf-8"?>
    2. <LinearLayout
    3. xmlns:android="http://schemas.android.com/apk/res/android"
    4. android:orientation="horizontal"
    5. android:layout_width="match_parent"
    6. android:layout_height="match_parent">
    7. <StackView
    8. android:id="@+id/mStackView"
    9. android:layout_width="match_parent"
    10. android:layout_height="wrap_content"
    11. android:loopViews="true" />
    12. <LinearLayout
    13. android:orientation="horizontal"
    14. android:layout_width="wrap_content"
    15. android:layout_height="wrap_content">
    16. <Button
    17. android:layout_width="wrap_content"
    18. android:layout_height="wrap_content"
    19. android:text="上一个"
    20. android:onClick="prev"/>
    21. <Button
    22. android:layout_width="wrap_content"
    23. android:layout_height="wrap_content"
    24. android:text="下一个"
    25. android:onClick="next"/>
    26. </LinearLayout>
    27. </LinearLayout>

    Cell文件

    1. <?xml version="1.0" encoding="UTF-8"?>
    2. <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    3. android:orientation="horizontal"
    4. android:layout_width="match_parent"
    5. android:layout_height="match_parent"
    6. android:gravity="center_horizontal"
    7. android:padding="2pt">
    8. <ImageView
    9. android:id="@+id/image1"
    10. android:layout_width="120dp"
    11. android:layout_height="120dp"
    12. />
    13. </LinearLayout>

    效果:

  • 相关阅读:
    tornado与asyncmongo
    Grails/Groovy学习资源
    关于markdown
    Grails一些重要的配置文件
    Grails的目录结构
    Grails中的UrlMapping
    MVC已死,该是用MOVE的时候了
    算法——回溯法
    算法——分支限界法
    C#如何操控FTP
  • 原文地址:https://www.cnblogs.com/wwjldm/p/6929585.html
Copyright © 2020-2023  润新知