package com.hangcheng;
import java.io.File;
import java.util.ArrayList;
import com.example.bdcustomer_demo.R;
import com.hangcheng.entity.FileBin;
import com.hangcheng.helper.MySQLiteHelper;
import android.app.Activity;
import android.content.Intent;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.os.Bundle;
import android.os.Environment;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.view.Window;
import android.webkit.WebChromeClient.CustomViewCallback;
import android.widget.BaseAdapter;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ListView;
import android.widget.SimpleAdapter;
import android.widget.TextView;
import android.widget.Toast;
public class DbActivity extends Activity {
private EditText editText_type;
private Button btn_search;
private TextView textView_id;
private TextView textView_type;
private TextView textView_path;
private Button btn_delete;
private Button btn_play;
private String file_id = "";
private String file_type = "";
private String file_path = "";
private ListView listView_db;
ArrayList data;
private Cursor cursor;
private FileBin fileBin;
private String fileid;
private String type;
private String path;
BaseAdapter adapter;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(R.layout.dbfile);
data = new ArrayList();
initView();
cursor = new MySQLiteHelper(DbActivity.this, "file.db", null, 1)
.querydataFromdb(file_id, file_type, file_path);
cursor.moveToFirst();
while (cursor.moveToNext()) {
android.util.Log.e(
"tag",
cursor.getString(cursor.getColumnIndex("_id"))
+ cursor.getString(cursor.getColumnIndex("type"))
+ cursor.getString(cursor
.getColumnIndex("filepath")));
}
data = new MySQLiteHelper(DbActivity.this, "file.db", null, 1)
.getfileData();
android.util.Log.e("MESSAGE", data.size() + "");
adapter = new BaseAdapter() {
@Override
public View getView(final int position, View convertView,
ViewGroup parent) {
if (convertView == null) {
convertView = LayoutInflater.from(DbActivity.this).inflate(
R.layout.list_view_filedb_items, null);
}
FileBin filebin = (FileBin) data.get(position);
Log.e("MESSAGE", filebin.getId());
Log.e("MESSAGE", filebin.getType());
Log.e("MESSAGE", filebin.getFilepath());
textView_id = (TextView) convertView
.findViewById(R.id.textViewdb_id);
textView_type = (TextView) convertView
.findViewById(R.id.textViewdb_type);
textView_path = (TextView) convertView
.findViewById(R.id.textViewdb_path);
btn_delete = (Button) convertView.findViewById(R.id.btn_delete);
btn_play = (Button) convertView.findViewById(R.id.btn_play);
textView_id.setText(filebin.getId());
textView_type.setText(filebin.getType());
textView_path.setText(filebin.getFilepath());
final int id = position;
btn_play.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Log.e("HAHAHAHHAHA", "进来了");
Log.e("HAHAHAHHAHA", "当前点击的位置是:" + position + "");
Log.e("HAHAHAHHAHA",
((FileBin) data.get(position)).getType());
Log.e("HAHAHAHHAHA",
((FileBin) data.get(position)).getFilepath());
type = ((FileBin) data.get(position)).getType();
path = ((FileBin) data.get(position)).getFilepath();
if (type.equals("jpg") || type.equals("png")
|| type.equals("jpeg")) {
Intent intent = new Intent(getBaseContext(),
PictureActivity.class);
intent.putExtra("picpath", path);
startActivity(intent);
}
if (type.equals("mp4") || type.equals("wav")
|| type.equals("avi") || type.equals("mp3")) {
Log.e("HAHAHAHAHHA", "进入播放");
Intent intent = new Intent(DbActivity.this,
VideoActivity.class);
intent.putExtra("videopath", path);
startActivity(intent);
}
if (type.equals("gif")) {
Intent intent = new Intent(getBaseContext(),
GifViewActivity.class);
intent.putExtra("gifpath", path);
startActivity(intent);
}
}
});
btn_delete.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
fileid = ((FileBin) data.get(position)).getId();
MySQLiteHelper helper = new MySQLiteHelper(
getBaseContext(), "file.db", null, 1);
helper.deletedataFromdb(Integer.parseInt(fileid));
data = new MySQLiteHelper(DbActivity.this, "file.db",
null, 1).getfileData();
listView_db.setAdapter(adapter);
listView_db.invalidate();
adapter.notifyDataSetChanged();
}
});
return convertView;
}
@Override
public long getItemId(int arg0) {
return arg0;
}
@Override
public Object getItem(int arg0) {
fileBin = (FileBin) data.get(arg0);
fileid = fileBin.getId();
type = fileBin.getType();
path = fileBin.getFilepath();
return data.get(arg0);
}
@Override
public int getCount() {
return data.size();
}
};
listView_db.setAdapter(adapter);
btn_search.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
file_type = editText_type.getText().toString();
if (file_type.equals("")) {
data = new MySQLiteHelper(DbActivity.this, "file.db", null,
1).getfileData();
} else {
data = new MySQLiteHelper(DbActivity.this, "file.db", null,
1).getfilebyTypeData(file_type);
}
cursor.moveToFirst();
listView_db.setAdapter(new BaseAdapter() {
@Override
public View getView(final int position, View convertView,
ViewGroup parent) {
if (convertView == null) {
convertView = LayoutInflater.from(DbActivity.this)
.inflate(R.layout.list_view_filedb_items,
null);
}
FileBin filebin = (FileBin) data.get(position);
Log.e("MESSAGE", filebin.getId());
Log.e("MESSAGE", filebin.getType());
Log.e("MESSAGE", filebin.getFilepath());
textView_id = (TextView) convertView
.findViewById(R.id.textViewdb_id);
textView_type = (TextView) convertView
.findViewById(R.id.textViewdb_type);
textView_path = (TextView) convertView
.findViewById(R.id.textViewdb_path);
btn_delete = (Button) convertView
.findViewById(R.id.btn_delete);
btn_play = (Button) convertView
.findViewById(R.id.btn_play);
textView_id.setText(filebin.getId());
textView_type.setText(filebin.getType());
textView_path.setText(filebin.getFilepath());
type = filebin.getType();
path = filebin.getFilepath();
btn_play.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Log.e("HAHAHAHHAHA", "进来了");
Log.e("HAHAHAHHAHA", "当前点击的位置是:" + position
+ "");
Log.e("HAHAHAHHAHA", ((FileBin) data
.get(position)).getType());
Log.e("HAHAHAHHAHA", ((FileBin) data
.get(position)).getFilepath());
type = ((FileBin) data.get(position)).getType();
path = ((FileBin) data.get(position))
.getFilepath();
if (type.equals("jpg") || type.equals("png")
|| type.equals("jpeg")) {
Intent intent = new Intent(
getBaseContext(),
PictureActivity.class);
intent.putExtra("picpath", path);
startActivity(intent);
}
if (type.equals("mp4") || type.equals("wav")
|| type.equals("avi")
|| type.equals("mp3")) {
Log.e("HAHAHAHAHHA", "进入播放");
Intent intent = new Intent(DbActivity.this,
VideoActivity.class);
intent.putExtra("videopath", path);
startActivity(intent);
}
if (type.equals("gif")) {
Intent intent = new Intent(
getBaseContext(),
GifViewActivity.class);
intent.putExtra("gifpath", path);
startActivity(intent);
}
}
});
btn_delete
.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
fileid = ((FileBin) data.get(position))
.getId();
MySQLiteHelper helper = new MySQLiteHelper(
getBaseContext(), "file.db",
null, 1);
helper.deletedataFromdb(Integer
.parseInt(fileid));
data = new MySQLiteHelper(
DbActivity.this, "file.db",
null, 1).getfileData();
listView_db.setAdapter(adapter);
listView_db.invalidate();
adapter.notifyDataSetChanged();
}
});
return convertView;
}
@Override
public long getItemId(int arg0) {
return arg0;
}
@Override
public Object getItem(int arg0) {
return data.get(arg0);
}
@Override
public int getCount() {
return data.size();
}
});
}
});
}
private void initView() {
editText_type = (EditText) findViewById(R.id.file_type);
btn_search = (Button) findViewById(R.id.btn_search);
listView_db = (ListView) findViewById(R.id.listview_db);
}
}
分享到:
相关推荐
要在`SimpleAdapter` 的列表项中添加按钮,我们需要自定义一个布局文件(如 `list_item.xml`),并在其中包含一个或多个按钮组件。例如: ```xml <LinearLayout xmlns:android=...
在这个场景中,我们要讨论的重点是如何在ListView中的每个Item(即列表项)上添加Button,并处理这些Button的点击事件,以便根据点击的Button获取对应的Item信息。 首先,理解ListView的工作原理至关重要。ListView...
1. **内联按钮**:可以直接在ListView的item布局文件中添加一个Button元素,这样每个列表项都有一个按钮。不过,这种情况下,每个按钮的点击事件都需要单独处理,确保不会对其他列表项产生影响。 2. **Footer View*...
这个Adapter应该继承自`BaseAdapter`,并重写`getView()`方法,该方法负责为ListView的每一项生成视图。在这个方法中,我们将实例化上面创建的布局,并设置Button的点击事件: ```java public class MyAdapter ...
综上所述,这个项目涵盖了Android开发中关于ListView、BaseAdapter以及键盘事件处理的核心知识,是提升Android UI交互体验的一个实例。通过这个项目的学习,开发者能够更好地理解和掌握Android中数据和视图之间的...
本文将详细讲解如何利用BaseAdapter来创建一个仿iOS风格的侧滑菜单,包括菜单项的动态设置、菜单显示隐藏、点击事件处理等核心知识点。 **一、BaseAdapter简介** BaseAdapter是Android系统提供的一个抽象适配器类,...
它的每个项(item)通常会包含多个组件,如文本、图片或者按钮。当我们需要在ListView的item中的按钮触发特定事件时,就需要深入了解如何处理按钮点击事件。这篇内容将深入探讨Android的ListView与Button的交互。 ...
1. 自定义Adapter:你需要继承BaseAdapter或者ArrayAdapter,并重写其中的方法,如getView(),在这个方法中你可以创建并设置ListView每一项的布局,包括按钮。 2. 设置按钮事件:在getView()方法中,找到Button组件...
为了增强用户体验和交互性,我们常常会在ListView的每一项(Item)中添加按钮。这样,用户可以通过点击按钮来执行特定的操作,如查看详情、删除条目等。本教程将详细介绍如何在ListView中添加按钮并实现监听事件。 ...
总结:在Android中,通过在ListView的每一项中添加按钮并监听事件,我们可以实现更丰富的用户交互。这个过程涉及到创建布局文件、自定义Adapter、设置监听器等步骤。记住,优化性能也是关键,合理使用convertView能...
在实际应用中,我们经常需要对ListView进行自定义,比如在每个列表项中添加图片和按钮,以增加交互性和功能多样性。本文将深入探讨如何在ListView中添加图片和按钮,并实现它们以及ListView的双监听,以便按钮点击时...
在Android开发中,构建用户界面是一项关键任务,而“android树,带图标、文字、按钮例子”是一个典型的UI设计需求,通常用于展示层次结构的数据。在这个案例中,开发者使用了ListView和BaseAdapter来创建一个带有...
在Android开发中,ListView是一种常用的组件,用于展示可滚动的列表数据。在本文中,我们将深入探讨如何在Android Studio中实现ListView的动态增加以及左滑删除功能,这将帮助你构建更加用户友好的应用程序。 首先...
总结起来,"android 带有按钮相应的listview"是Android开发中一种增强用户交互的方式,它结合了ListView的展示功能和Button的触发事件能力。通过自定义布局、适配器和事件监听,我们可以创建出具有动态响应的列表,...
Android编程实现ListView中item部分区域添加点击事件功能是一项非常重要的技术,涉及Android ListView相关适配器及事件响应操作技巧。下面将详细介绍这项技术的实现方法。 首先,需要了解ListView的基本概念。...
动态添加和删除ListView中的Item是一项常见的功能,尤其在构建需要用户交互的应用时。本文将深入探讨如何实现这个需求,以及涉及到的关键知识点。 首先,我们需要理解ListView的工作原理。ListView通过Adapter与...
4. `getView(int position, View convertView, ViewGroup parent)`:这是最重要的方法,它负责创建或复用ListView的一项视图。`convertView`是可重用的视图,如果非空,我们可以复用它以提高性能。`position`是当前...
在Android开发中,横竖屏适配是一项重要的工作,它涉及到用户界面在不同屏幕方向下的显示效果。本项目"android适应横竖屏登录模块toolsbar重写BaseAdapter.zip"主要展示了如何实现一个登录界面,该界面能够根据设备...
这个“android gridview添加删除.zip”文件很可能包含了一个示例项目,教你如何在GridView中实现元素的添加和删除功能。让我们详细探讨一下GridView以及如何在其中进行这些操作。 GridView是一个二维的列表视图,它...
3. **绑定点击事件**:在`getView()`方法内,通过`findViewById()`找到每个列表项中的按钮,并使用`setOnClickListener()`为其设置监听器。这里可以使用匿名内部类来实现,或者创建单独的监听器类以保持代码结构清晰...