Android 动态EditText和textview加slqlite更新语法

Android 动态EditText和textview加slqlite更新语法,android,sqlite,swipe,Android,Sqlite,Swipe,大家好,我有一个使用android studio的移动程序,我这里有一个edittext和一个动态创建的textview,edittext和textview的数量基于sqlite列数量和单位。我还将在确切的输出上添加一个打印屏幕,我想要的是,当我滑动片段时,edittext中的值将保存在sqlite中,并根据动态创建的文本视图的单元来更新。我已经完成了滑动和sqlite查询更新,我只是不知道如何保存edittext的逻辑取决于textview值,这两个值都是edittext,textview是通

大家好,我有一个使用android studio的移动程序,我这里有一个edittext和一个动态创建的textview,edittext和textview的数量基于sqlite列数量单位。我还将在确切的输出上添加一个打印屏幕,我想要的是,当我滑动片段时,edittext中的值将保存在sqlite中,并根据动态创建的文本视图的单元来更新。我已经完成了滑动和sqlite查询更新,我只是不知道如何保存edittext的逻辑取决于textview值,这两个值都是edittext,textview是通过友好方式创建的,并在游标查询中循环

//下面是使用游标创建DynamicTextView和edittext的代码,游标位于片段内部

public static class PageFragment extends Fragment {
        public static final String id = "id";
        public static final String cate = "category";
        public static final String code = "code";
        public static final String desk = "description";
        public static final String unit = "unit";
        public static final String quan = "Quantity";
        TextView tv;
        EditText et;
        @Override
        public View onCreateView(LayoutInflater inflater, ViewGroup container,
                                 Bundle savedInstanceState) {

            View rootView = inflater.inflate(R.layout.fragment_item, container, false);


            ((TextView) rootView.findViewById(R.id.item_label2)).setText(
                    getArguments().getString(cate));
            ((TextView) rootView.findViewById(R.id.item_label3)).setText(
                    getArguments().getString(code));
            ((TextView) rootView.findViewById(R.id.item_label4)).setText(
                    getArguments().getString(desk));
            ((TextView) rootView.findViewById(R.id.item_label5)).setText(
                    getArguments().getString(unit));
            ((TextView) rootView.findViewById(R.id.item_label6)).setText(
                    getArguments().getString(quan));
            ((TextView) rootView.findViewById(R.id.item_label1)).setText(
                    getArguments().getString(id));

            TextView code = (TextView)rootView.findViewById(R.id.item_label3);
            DBController controller = new DBController(getActivity());
            SQLiteDatabase db2 = controller.getWritableDatabase();

            Cursor mCursor2 = db2.rawQuery("SELECT Unit,Quantity FROM Countsheet WHERE TRIM(Code) = '"+ code.getText().toString() +"'", null);

            while (mCursor2.moveToNext()) {
                LinearLayout ll = (LinearLayout) rootView.findViewById(R.id.linearLayout2);
                // add text view
                            List<String> data = new ArrayList<String>();
                            data.add(mCursor2.getString(0));
                     for (int i = 0; i < data.size(); i++) {
                         tv = new TextView(getActivity());
                         tv.setTextSize(TypedValue.COMPLEX_UNIT_DIP, 18);
                         tv.setTextColor(Color.BLACK);
                         tv.setText(data.get(i));
                         tv.setId(R.id.unit);
                         ll.addView(tv);

                         et = new EditText(getActivity());
                         et.setHint("Input Quantity");
                         et.setTextColor(Color.RED);
                         et.setId(R.id.quanity);
                         et.setText(mCursor2.getString(1));
                         et.setInputType(InputType.TYPE_CLASS_NUMBER | InputType.TYPE_TEXT_VARIATION_PASSWORD);
                         ll.addView(et);
                     }

//                mArrayList.add(mCursor2.getString(mCursor2.getColumnIndex(DBController.FeedReaderContract.FeedEntry.Col_5)));
//                Toast.makeText(getActivity(), "" + data, Toast.LENGTH_SHORT).show();
            }

            return rootView;

        }
//这是我的代码,在另一个片段中

public class PagerFragment extends Fragment {
    private List<PageData> data;
    private int currentPosition;
    private View v;
    EditText q;
    TextView unit;
    TextView code;


    private ViewPager mViewPager;

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
        v = inflater.inflate(R.layout.fragment_pager, container, false);
         mViewPager = (ViewPager)v.findViewById(R.id.pager_view);
        currentPosition = getArguments().getInt("CURRENT_POSITION");
        data = getArguments().getParcelableArrayList("DATA_LIST");
        final FragmentItemPagerAdapter fragmentItemPagerAdapter = new FragmentItemPagerAdapter(getFragmentManager(), data);
        mViewPager.setAdapter(fragmentItemPagerAdapter);
        mViewPager.setCurrentItem(currentPosition);
        onswipe();
        return v;


    }
    private void onswipe(){
        final DBController controller = new DBController(getActivity());
        mViewPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() {
            @Override
            public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {

            }

            @Override
            public void onPageSelected(int position) {

                unit = ((TextView)v.findViewById(R.id.unit));
                String units = unit.getText().toString();
                code =  ((TextView) v.findViewById(R.id.item_label3));
                String codes =  code.getText().toString();
                q = ((EditText)v.findViewById(R.id.quanity));
                String quan = q.getText().toString();
                data data = new data();
                data.set_Code(codes);
                data.set_Unit(units);
                data.set_Quantity(quan);
                controller.updateContact(data);
                Toast.makeText(getActivity(),"" + codes + quan + units,Toast.LENGTH_SHORT).show();
            }
            @Override
            public void onPageScrollStateChanged(int state) {

            }
        });

    }

}
公共类PagerFragment扩展片段{
私人名单数据;
私人职位;
私人观点v;
编辑文本q;
文本视图单元;
文本视图代码;
私有视图寻呼机mViewPager;
@凌驾
CreateView上的公共视图(布局、充气机、视图组容器、捆绑包保存状态){
v=充气机。充气(R.layout.fragment_寻呼机,容器,错误);
mViewPager=(ViewPager)v.findViewById(R.id.pager\u视图);
currentPosition=getArguments().getInt(“当前位置”);
data=getArguments().getParcelableArrayList(“数据列表”);
最终FragmentItemPagerAdapter FragmentItemPagerAdapter=新FragmentItemPagerAdapter(getFragmentManager(),数据);
mViewPager.setAdapter(fragmentItemPagerAdapter);
mViewPager.setCurrentItem(当前位置);
onswip();
返回v;
}
私有void onswip(){
final DBController=newdbcontroller(getActivity());
mViewPager.addOnPageChangeListener(新的ViewPager.OnPageChangeListener(){
@凌驾
已滚动页面上的公共无效(int-position、float-positionOffset、int-positionOffsetPixels){
}
@凌驾
已选择页面上的公共无效(内部位置){
单位=((文本视图)v.findviewbyd(R.id.unit));
字符串单位=unit.getText().toString();
代码=((TextView)v.findViewById(R.id.item_label3));
字符串代码=code.getText().toString();
q=((编辑文本)v.findViewById(R.id.quanity));
字符串quan=q.getText().toString();
数据=新数据();
数据。设置_代码(代码);
数据集单位(单位);
数据。设置数量(数量);
controller.updateContact(数据);
Toast.makeText(getActivity(),“”+代码+数量+单位,Toast.LENGTH_SHORT).show();
}
@凌驾
公共无效onPageScrollStateChanged(int状态){
}
});
}
}
public class PagerFragment extends Fragment {
    private List<PageData> data;
    private int currentPosition;
    private View v;
    EditText q;
    TextView unit;
    TextView code;


    private ViewPager mViewPager;

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
        v = inflater.inflate(R.layout.fragment_pager, container, false);
         mViewPager = (ViewPager)v.findViewById(R.id.pager_view);
        currentPosition = getArguments().getInt("CURRENT_POSITION");
        data = getArguments().getParcelableArrayList("DATA_LIST");
        final FragmentItemPagerAdapter fragmentItemPagerAdapter = new FragmentItemPagerAdapter(getFragmentManager(), data);
        mViewPager.setAdapter(fragmentItemPagerAdapter);
        mViewPager.setCurrentItem(currentPosition);
        onswipe();
        return v;


    }
    private void onswipe(){
        final DBController controller = new DBController(getActivity());
        mViewPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() {
            @Override
            public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {

            }

            @Override
            public void onPageSelected(int position) {

                unit = ((TextView)v.findViewById(R.id.unit));
                String units = unit.getText().toString();
                code =  ((TextView) v.findViewById(R.id.item_label3));
                String codes =  code.getText().toString();
                q = ((EditText)v.findViewById(R.id.quanity));
                String quan = q.getText().toString();
                data data = new data();
                data.set_Code(codes);
                data.set_Unit(units);
                data.set_Quantity(quan);
                controller.updateContact(data);
                Toast.makeText(getActivity(),"" + codes + quan + units,Toast.LENGTH_SHORT).show();
            }
            @Override
            public void onPageScrollStateChanged(int state) {

            }
        });

    }

}