-3
私のアプリは、フラグメントクラス、デシベルクラス、mainactivityクラス ....... I挿入]ボタンをクリックしたときに、この番組は「DATA挿入されていない」が含まれ、 ,,,,,私は...... WHERE問題です理解してい...........これは私のコードです: Mainactivityクラス:挿入
package ir.hashem.navfragtest;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab);
fab.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Snackbar.make(view, "Replace with your own action", Snackbar.LENGTH_LONG)
.setAction("Action", null).show();
}
});
DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
ActionBarDrawerToggle toggle = new ActionBarDrawerToggle(
this, drawer, toolbar, R.string.navigation_drawer_open, R.string.navigation_drawer_close);
drawer.setDrawerListener(toggle);
toggle.syncState();
NavigationView navigationView = (NavigationView) findViewById(R.id.nav_view);
navigationView.setNavigationItemSelectedListener(this);
}
@Override
public void onBackPressed() {
DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
if (drawer.isDrawerOpen(GravityCompat.START)) {
drawer.closeDrawer(GravityCompat.START);
} else {
super.onBackPressed();
}
}
@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 boolean onOptionsItemSelected(MenuItem item) {
// Handle action bar item clicks here. The action bar will
// automatically handle clicks on the Home/Up button, so long
// as you specify a parent activity in AndroidManifest.xml.
int id = item.getItemId();
//noinspection SimplifiableIfStatement
if (id == R.id.action_settings) {
return true;
}
return super.onOptionsItemSelected(item);
}
@SuppressWarnings("StatementWithEmptyBody")
@Override
public boolean onNavigationItemSelected(MenuItem item) {
// Handle navigation view item clicks here.
int id = item.getItemId();
if (id == R.id.nav_camera) {
fr1 fragment = new fr1();
android.support.v4.app.FragmentTransaction fragmentTransaction = getSupportFragmentManager().beginTransaction();
fragmentTransaction.replace(R.id.fragment11, fragment);
fragmentTransaction.commit();
} else if (id == R.id.nav_gallery) {
} else if (id == R.id.nav_slideshow) {
}
DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
drawer.closeDrawer(GravityCompat.START);
return true;
}
}
断片クラス
package ir.hashem.navfragtest;
public class fr1 extends Fragment
{
public fr1() {
// Required empty public constructor
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
v=inflater.inflate(R.layout.fr1, container, false);
mydb=new database(getActivity());
btninsert= (Button) v.findViewById(R.id.btninsert);
btndelete= (Button) v.findViewById(R.id.btndelete);
name= (EditText) v.findViewById(R.id.etjens);
// id= (EditText) v.findViewById(R.id.editText3);
btndelete.setOnClickListener(new View.OnClickListener()
{
@Override
public void onClick(View view)
{
id= (EditText) v.findViewById(R.id.etid);
Integer isDeleted=mydb.Delete(id.getText().toString());
if(isDeleted>0)
Toast.makeText(fr1.this.getActivity(), "DATA DELETED", Toast.LENGTH_LONG).show();
else
Toast.makeText(fr1.this.getActivity(), "DATA NOT DELETED", Toast.LENGTH_LONG).show();
}
});
btninsert.setOnClickListener(new View.OnClickListener()
{
@Override
public void onClick(View view)
{
String n=name.getText().toString();
boolean isinserted = mydb.inserdata(n);
if (isinserted == true)
Toast.makeText(fr1.this.getActivity(), "DATA INSERTED", Toast.LENGTH_LONG).show();
else
Toast.makeText(fr1.this.getActivity(), "DATA NOT INSERTED", Toast.LENGTH_LONG).show();
}
});
return v;
}
}
.
.
.
Databaseクラス
package ir.hashem.navfragtest;
public class database extends SQLiteOpenHelper{
public static final String DATABASE_NAME="market";
public static final String tablename="jens";
public static final String col1="id";
public static final String col2="name";
public database(Context context) {
super(context, DATABASE_NAME, null, 1);
}
@Override
public void onCreate(SQLiteDatabase db) {
db.execSQL("create table jens (id INTEGER PRIMARY KEY AUTOINCREMENT,name TEXT not null)");
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
db.execSQL("DROP TABLE IF EXISTS jens");
onCreate(db);
}
public boolean inserdata(String n)
{
SQLiteDatabase db=this.getWritableDatabase();
ContentValues contentValues=new ContentValues();
contentValues.put("name",n);
long result=db.insert("jens", null, contentValues);
if (result == -1)
return false;
else
return true;
}
public Cursor getAlldata()
{
SQLiteDatabase db=this.getWritableDatabase();
Cursor res=db.rawQuery("select * from jens",null);
return res;
}
public boolean updateData(String id,String n)
{
SQLiteDatabase db=this.getWritableDatabase();
ContentValues contentValues=new ContentValues();
contentValues.put(col1,id);
contentValues.put(col2,n);
db.update(tablename,contentValues,"id = ?",new String[] {id});
return true;
}
public Integer Delete(String id)
{
SQLiteDatabase db=this.getWritableDatabase();
return db.delete(tablename,"id = ?",new String[] {id});
}
}
のようなあなたのデータベース変数を初期化し、DBクラスの** insertdata(N)**で名前の詳細をログ取得しよう。 * ex:Log.d( "name"、n); * –