Android 动态EditText和textview加slqlite更新语法
大家好,我有一个使用android studio的移动程序,我这里有一个edittext和一个动态创建的textview,edittext和textview的数量基于sqlite列数量和单位。我还将在确切的输出上添加一个打印屏幕,我想要的是,当我滑动片段时,edittext中的值将保存在sqlite中,并根据动态创建的文本视图的单元来更新。我已经完成了滑动和sqlite查询更新,我只是不知道如何保存edittext的逻辑取决于textview值,这两个值都是edittext,textview是通过友好方式创建的,并在游标查询中循环 //下面是使用游标创建DynamicTextView和edittext的代码,游标位于片段内部Android 动态EditText和textview加slqlite更新语法,android,sqlite,swipe,Android,Sqlite,Swipe,大家好,我有一个使用android studio的移动程序,我这里有一个edittext和一个动态创建的textview,edittext和textview的数量基于sqlite列数量和单位。我还将在确切的输出上添加一个打印屏幕,我想要的是,当我滑动片段时,edittext中的值将保存在sqlite中,并根据动态创建的文本视图的单元来更新。我已经完成了滑动和sqlite查询更新,我只是不知道如何保存edittext的逻辑取决于textview值,这两个值都是edittext,textview是通
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) {
}
});
}
}