2014-05-01 23 views
0

我正在製作項目,我希望GridView中的項目必須可以像遊戲2048中一樣滑動。我使用GridView進行了佈局,現在我希望它可以從上到下,從下到上,從右到左滑動,左到右。我必須做些什麼才能變得滑動?如何讓GridView滑動?

在XML文件中:

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:orientation="vertical" > 

    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="Score" /> 

    <GridView 
     android:id="@+id/grid_view" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_marginTop="50dp" 
     android:horizontalSpacing="5dp" 
     android:numColumns="4" 
     android:verticalSpacing="5dp" > 
    </GridView> 

</LinearLayout> 

在活動類:

public class MainActivity extends Activity implements OnItemClickListener, 
     OnDrawerOpenListener { 

    GridView gridView; 
    SlidingDrawer sd; 

    static final String[] numbers = new String[] { "A", "B", "C", "D", "E", 
      "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P" }; 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.grid_layout); 
     // sd = (SlidingDrawer) findViewById(R.id.sDrawer1); 
     // sd.setOnDrawerOpenListener(this); 
     gridView = (GridView) findViewById(R.id.grid_view); 
     ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, 
       android.R.layout.simple_list_item_1, numbers); 

     gridView.setAdapter(adapter); 

     gridView.setOnItemClickListener(this); 

    } 

    @Override 
    public boolean onCreateOptionsMenu(Menu menu) { 
     // Inflate the menu; this adds items to the action bar if it is present. 
     getMenuInflater().inflate(R.menu.main, menu); 
     return true; 
    } 

    @Override 
    public void onItemClick(AdapterView<?> arg0, View v, int arg2, long arg3) { 
     // TODO Auto-generated method stub 

      Toast.makeText(getApplicationContext(), ((TextView) v).getText(), 
      Toast.LENGTH_SHORT).show(); 

    } 

    @Override 
    public void onDrawerOpened() { 
     // TODO Auto-generated method stub 

    } 

} 

回答

0

我想你想的一樣GridView滾動水平/垂直。那麼在這種情況下,雙向視圖將對您有所幫助。這是Android GridView,可以配置爲水平或垂直滾動​​。

查看Link 1Link 2,它以兩種方式提供了GridView的演示。

+0

我試圖導入這些項目,以便我可以學習但他們沒有得到導入 –