package com.bwie.jingdong.activity; import android.app.AlertDialog; import android.content.DialogInterface; import android.content.Intent; import android.graphics.Color; import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import android.view.View; import android.view.ViewGroup; import android.widget.AdapterView; import android.widget.ArrayAdapter; import android.widget.Button; import android.widget.EditText; import android.widget.ImageView; import android.widget.ListView; import android.widget.TextView; import android.widget.Toast; import com.bwie.jingdong.R; import com.bwie.jingdong.custom.LiuShiBuJu; import com.bwie.jingdong.dao.Dao; import java.util.ArrayList; import java.util.List; public class SuoSouActivity extends AppCompatActivity { private String mNames[] = { "袜子", "汾酒", "婴儿爬行垫", "电压力锅", "煲汤锅砂锅"}; private ImageView image_fanhui; private EditText text_name; private LiuShiBuJu ls; private ListView lv; private Dao dao; private List<String> select; private Button btn; private ArrayAdapter<String> adapter; List<String> a=new ArrayList<>(); @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_suo_sou); image_fanhui = findViewById(R.id.image_fanhui); text_name = findViewById(R.id.text_name); ls = findViewById(R.id.ls); lv = findViewById(R.id.lv); btn = findViewById(R.id.btn); image_fanhui.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { finish(); } }); dao = new Dao(SuoSouActivity.this); select = dao.select(); adapter = new ArrayAdapter<String>(SuoSouActivity.this,android.R.layout.simple_list_item_1, android.R.id.text1,select); lv.setAdapter(adapter); lv.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener() { @Override public boolean onItemLongClick(AdapterView<?> adapterView, View view, final int d, long l) { AlertDialog.Builder builder = new AlertDialog.Builder(SuoSouActivity.this); builder.setTitle("是否删除"); builder.setPositiveButton("确认", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialogInterface, int i) { int delYi = dao.delYi(select.get(d).toString()); if (delYi==1){ zhanshi(); } } }); builder.setNegativeButton("取消",null); builder.show(); return false; } }); if (select.size()>0){ btn.setVisibility(View.VISIBLE); }else if(select.size()==0){ btn.setVisibility(View.INVISIBLE); } initChildViews(); } private void zhanshi() { List<String> sel4 = dao.select(); ArrayAdapter<String> ada = new ArrayAdapter<String>(SuoSouActivity.this, android.R.layout.simple_list_item_1, android.R.id.text1, sel4); lv.setAdapter(ada); } private void initChildViews() { ViewGroup.MarginLayoutParams lp = new ViewGroup.MarginLayoutParams( ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT); lp.leftMargin = 10; lp.rightMargin = 10; lp.topMargin = 5; lp.bottomMargin = 5; for (int i = 0; i < mNames.length; i++) { TextView view = new TextView(this); view.setText(mNames[i]); view.setTextColor(Color.WHITE); final int finalI = i; view.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { Toast.makeText(SuoSouActivity.this,mNames[finalI], Toast.LENGTH_SHORT).show(); } }); view.setBackgroundDrawable(getResources().getDrawable(R.drawable.textview_bg)); ls.addView(view, lp); } } public void delall(View view) { dao.del(); List<String> select2 = dao.select(); ArrayAdapter<String> adapter2 = new ArrayAdapter<String>(SuoSouActivity.this, android.R.layout.simple_list_item_1, android.R.id.text1, select2); lv.setAdapter(adapter2); Toast.makeText(this, "清楚成功", Toast.LENGTH_SHORT).show(); //没有记录隐藏 btn.setVisibility(View.INVISIBLE); } public void add(View view) { String keywords = text_name.getText().toString(); dao.insert(keywords); btn.setVisibility(View.VISIBLE); List<String> sel3 = dao.select(); a.add(0,keywords); ArrayAdapter<String> adapter3 = new ArrayAdapter<>(SuoSouActivity.this, android.R.layout.simple_list_item_1, android.R.id.text1, a); lv.setAdapter(adapter3); Intent intent = new Intent(SuoSouActivity.this,LieBiaoActivity.class); intent.putExtra("keywords",keywords); startActivity(intent); } }布局
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" tools:context="com.bwie.jingdong.activity.SuoSouActivity"> <LinearLayout android:layout_marginTop="10dp" android:orientation="horizontal" android:layout_width="match_parent" android:layout_height="40dp"> <ImageView android:id="@+id/image_fanhui" android:layout_marginLeft="-10dp" android:layout_marginTop="7dp" android:src="@drawable/back2" android:layout_width="75dp" android:layout_height="20dp"/> <EditText android:layout_width="0dp" android:layout_height="match_parent" android:layout_weight="9" android:background="@null" android:id="@+id/text_name" android:hint="请输入关键字" android:textColor="#000"/> <Button android:layout_weight="2" android:layout_width="0dp" android:layout_height="wrap_content" android:text="搜索" android:onClick="add" android:layout_gravity="center" /> </LinearLayout> <TextView android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="10dp" android:textColor="#000" android:textSize="20sp" android:text="热搜" android:paddingLeft="5dp" android:textStyle="bold"/> <com.bwie.jingdong.custom.LiuShiBuJu android:layout_width="match_parent" android:layout_height="200dp" android:id="@+id/ls"> </com.bwie.jingdong.custom.LiuShiBuJu> <TextView android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="10dp" android:textColor="#000" android:textSize="20sp" android:id="@+id/tv_tip" android:text="历史搜索" android:paddingLeft="5dp" android:textStyle="bold"/> <ListView android:layout_width="match_parent" android:layout_height="300dp" android:id="@+id/lv"></ListView> <Button android:layout_width="match_parent" android:layout_height="wrap_content" android:text="清空历史记录" android:layout_gravity="center" android:gravity="center" android:onClick="delall" android:visibility="invisible" android:id="@+id/btn" /> </LinearLayout>dao层
package com.bwie.jingdong.dao; import android.content.ContentValues; import android.content.Context; import android.database.Cursor; import android.database.sqlite.SQLiteDatabase; import com.bwie.jingdong.helper.MyHelper; import java.util.ArrayList; import java.util.List; /** * Created by lenovo on 2017/12/28. */ public class Dao { MyHelper helper; public Dao(Context context) { helper = new MyHelper(context); } public List<String> select() { SQLiteDatabase database = helper.getReadableDatabase(); List<String> list=new ArrayList<>(); Cursor cursor = database.rawQuery("select * from shuju1", null); while(cursor.moveToNext()){ String string = cursor.getString(1); list.add(string); } database.close(); return list; } public int delYi(String s) { SQLiteDatabase database = helper.getWritableDatabase(); database.execSQL("delete from shuju1 where json=?",new String[]{s}); database.close(); return 1; } public void insert(String json) { SQLiteDatabase database = helper.getWritableDatabase(); ContentValues values = new ContentValues(); values.put("json",json); database.insert("shuju1",null,values); database.close(); } public void del() { SQLiteDatabase database = helper.getWritableDatabase(); database.execSQL("delete from shuju1"); database.close(); } }
helper
package com.bwie.jingdong.helper; import android.content.Context; import android.database.sqlite.SQLiteDatabase; import android.database.sqlite.SQLiteOpenHelper; /** * Created by lenovo on 2017/12/28. */ public class MyHelper extends SQLiteOpenHelper{ public MyHelper(Context context) { super(context,"sss.db",null,2); } @Override public void onCreate(SQLiteDatabase sqLiteDatabase) { sqLiteDatabase.execSQL("create table shuju1(id integer primary key autoincrement,json text not null)"); } @Override public void onUpgrade(SQLiteDatabase sqLiteDatabase, int i, int i1) { } }