StackView

  • Stackview是AdapterViewAnimator的子類,顧名思義就是以堆疊的方式呈現。
  • 可透過滑動以及調用方法控畫面。

StackView使用

  • 在layout中加入Stackview
    <StackView
         android:id="@+id/stackView"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content">
         android:loopViews="true" //是否要循環播放
     </StackView>
    
  • MainActivity

    public class MainActivity extends AppCompatActivity {
      private  StackView stackView;
      private  ArrayList<Items> items = new ArrayList<>();
      private   Integer[] icons = {
              R.mipmap.ic_launcher,
              R.mipmap.ic_launcher,
              R.mipmap.ic_launcher,
              R.mipmap.ic_launcher,
              R.mipmap.ic_launcher,
              R.mipmap.ic_launcher};
    
      @Override
      protected void onCreate(Bundle savedInstanceState) {
          super.onCreate(savedInstanceState);
          setContentView(R.layout.activity_main);
          stackView = (StackView) findViewById(R.id.stackView);
    
          //將資料加入ArrayList
          for (int i = 0; i <  icons.length; i++) {
              items.add(new Items("Item " + i, icons[i]));
          }
    
          Adapter adapter = new Adapter(MainActivity.this, items);
          stackView.setAdapter(adapter);
      }
    
  • 調用方法呈現不同畫面

    public void next(View view){
          //下一個
          stackView.showNext();
      }
      public void prev(View view){
          //上一個
          stackView.showPrevious();
      }