2012-12-06 26 views
0

对于我目前在Android for Java中构建的应用程序,我正在寻找以下内容。我有一套可以说10个数据库记录。对于每一行我想显示一个活动(每次都是同一活动)。该活动的每个行都有一些字段需要更新。数据库表中每行的活动

可以说,例如,你有一个记录集与联系人,现在你想循环通过10个联系人并更新数据。

现在我不知道这应该如何在Android中工作。我应该为此使用碎片吗?我应该如何模拟这个。一些伪代码会有所帮助。

由于这是一个自定义应用程序我开发ICS

非常感谢

回答

1

创建FragmentActivityViewPager

ViewPager使用Adapter来显示具有不同数据的相同片段。

例如,如果您要存储要显示的数据库图像ID,则代码将如下所示。

public class MyActivity extends FragmentActivity { 

public static class MyFragment extends Fragment { 
    @Override 
    public View onCreateView(final LayoutInflater inflater, final ViewGroup container, final Bundle savedInstanceState) { 
     final ImageView content = new ImageView(getActivity()); 
     content.setImageResource(getArguments().getInt("img")); 

     return content; 
    } 
} 

private class MyPagerAdapter extends FragmentStatePagerAdapter { 
    private final ArrayList<Integer> imgs; 

    public AppTourPagerAdapter(final FragmentManager fm, final ArrayList<Integer> imgs) { 
     super(fm); 
     this.imgs = imgs; 
    } 

    @Override 
    public int getCount() { 
     return imgs.size(); 
    } 

    @Override 
    public Fragment getItem(final int position) { 
     final MyFragment fragment = new MyFragment(); 
     final Bundle args = new Bundle(); 
     args.putInt("img", imgs.get(position)); 
     fragment.setArguments(args); 
     return fragment; 
    } 
} 

@Override 
protected void onCreate(final Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.my_activity); 

    final ViewPager pager = (ViewPager) findViewById(R.id.pager); 
    final ArrayList<Integer> imgIds = ... // get values from database 
    pager.setAdapter(new MyPagerAdapter(getSupportFragmentManager(), imgIds)); 
} 
} 
+0

感谢您的回答。我可以在哪里跟踪我所持有的行以及还剩下多少行? – sanders

+0

行号 - “pager.getCurrentItem()'和行左 - 'adapter.getCount() - pager.getCurrentItem()'。 – vasart

0

使用viewpager与viewpager适配器。然后使用视图寻呼机创建一个布局,然后创建一个布局,该布局将包含您希望翻阅的视图寻呼机中的项目。在适配器中膨胀你想要翻转的布局。网上有很多例子。去谷歌上查询。你可以复制粘贴90%的东西,你需要让它工作。