密码盒 基本功能都实现了 下来分享源码 适合刚接触sqlite数据库的亲们使用

做这个之初是因为女朋友老是忘了自己的很多账号,所以就萌生了一个给他做一个android应用的想法,用了5天吧  ,实现了基本功能,账号添加  删除 修改 都是基于sqlite数据库的。程序很一般,拿出来和大家分享下。牛人就不用看了,新手还是值得学习的!

总共有四个activity:下面这个是显示账号列表的

package com.example.passwordbox;

import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.List;

import database.DBAdapter;
import database.goods;
import ImageAdapter.listAdapter;
import android.os.Bundle;
import android.app.Activity;
import android.app.AlertDialog;
import android.app.ListActivity;
import android.content.DialogInterface;
import android.content.Intent;
import android.database.Cursor;
import android.util.Log;
import android.view.ContextMenu;
import android.view.ContextMenu.ContextMenuInfo;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuItem;
import android.view.MenuItem.OnMenuItemClickListener;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.View.OnCreateContextMenuListener;
import android.view.Window;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ListView;
import android.widget.TextView;
import android.widget.Toast;

public class AccountlistActivity extends Activity  implements OnItemClickListener ,OnMenuItemClickListener{
    Button btn1=null;
    Button btn2=null;
    private ListView listview;
    DBAdapter db=null;
    @SuppressWarnings("rawtypes")
    List list=null;
    goods good = null;
    
    
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);   
        setContentView(R.layout.accountlist);
        getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.titlebar);  //titlebar为自己标题栏的布局
       listview=(ListView)findViewById(R.id.list);
     
       db = new DBAdapter(this);
       db.open();
        btn1=(Button)findViewById(R.id.buttonn);
        btn1.setOnClickListener(new Button.OnClickListener()
        {
            public void onClick(View v)
            {
                Intent intent1=new Intent();
                intent1.setClass(AccountlistActivity.this, NewActivity.class);
                startActivity(intent1);
                AccountlistActivity.this.finish();
            }
        });
        btn2=(Button)findViewById(R.id.buttonm);
        btn2.setOnClickListener(new Button.OnClickListener()
        {
            public void onClick(View v)
            {
                Intent intent2=new Intent();
                intent2.setClass(AccountlistActivity.this, NewActivity.class);
                startActivity(intent2);
                AccountlistActivity.this.finish();
            }
        });
        listview.setOnCreateContextMenuListener(new OnCreateContextMenuListener(){
            
            @Override
            public void onCreateContextMenu(ContextMenu menu, View v,
                    ContextMenuInfo menuInfo) {
                
                // TODO Auto-generated method stub
                    menu.setHeaderTitle("请选择操作");      
                    menu.add(0, 0, 0, "删除");  
                    menu.add(0, 1, 0, "修改");      
                
            }
            
        });
        show(); 
    }
    
  //长按菜单响应函数   
    @Override   
    public boolean onContextItemSelected(MenuItem item) {   
        //setTitle("点击了长按菜单里面的第"+item.getItemId()+"个项目");
          final AdapterView.AdapterContextMenuInfo info = (AdapterView.AdapterContextMenuInfo) item 
                  .getMenuInfo(); 
          int id = (int)info.id;//这里的info.id对应的是item对应的值
        if(item.getItemId()==0)
        {
            //根据id删除
            db.open();
            //int id = (int)info.id;//这里的info.id对应的是item对应的值
            showall();
            int m=((goods)list.get(id)).getId();
            Log.i("删除ID值", ""+id);
         
           // moveToPosition(id) 
            // db.deleteTitle(id);
            db.deleteTitle(m);
              db.close();
            Toast.makeText(getApplicationContext(), "删除成功",
                    Toast.LENGTH_SHORT).show();
            show();
        }
        else
        {
           //根据id
             LayoutInflater factory = LayoutInflater.from(this);  
                final View textEntryView = factory.inflate(R.layout.reserve, null);  
                final EditText editTextName = (EditText) textEntryView.findViewById(R.id.editTextName);  
                final EditText editTextNumEditText = (EditText)textEntryView.findViewById(R.id.editTextNum); 
                final EditText editTextaccEditText = (EditText)textEntryView.findViewById(R.id.edit);
                AlertDialog.Builder ad1 = new AlertDialog.Builder(AccountlistActivity.this);  
                ad1.setTitle("修改账户及密码:");  
                ad1.setIcon(android.R.drawable.ic_dialog_info);  
                ad1.setView(textEntryView); 
                 db.open();
                // int id = (int)info.id;//这里的info.id对应的就是item的行号
                  showall();
                 editTextaccEditText.setText(((goods)list.get(id)).getName());
                 editTextName.setText(((goods)list.get(id)).getAccount());
                 editTextNumEditText.setText(((goods)list.get(id)).getPass());
                  Log.i("修改账号", ""+((goods)list.get(id)).getAccount());
               
                  ad1.setPositiveButton("是", new DialogInterface.OnClickListener() {  
                    public void onClick(DialogInterface dialog, int i) {  
                          
                        Log.i("111111", editTextName.getText().toString());  
                
                     int id = (int)info.id;
                     String name=editTextaccEditText.getText().toString();
                     String account=editTextName.getText().toString();
                     String pass=editTextNumEditText.getText().toString();  
                     Log.i("修改ID值", ""+id);
                      
                      int m=((goods)list.get(id)).getId();   
                    //Log.i("删除ID值", ""+id);
                       db.updateTitle(m, name,account, pass);
                       db.close(); 
                       show();
                       Toast.makeText(getApplicationContext(), "修改成功",
                             Toast.LENGTH_SHORT).show();  
                    }  
                });  
                ad1.setNegativeButton("否", new DialogInterface.OnClickListener() {  
                    public void onClick(DialogInterface dialog, int i) {  
          
                    }  
                });  
                ad1.show();// 显示对话框  
                
                          
        }
        
        return super.onContextItemSelected(item);   
    }   
//    protected void showAddDialog() {  
//          
//       
//  
//    }  
   
    @SuppressWarnings({ "unchecked", "rawtypes" })
    public void show()
    {
        
        db.open();
        showall();
        Log.i("查询结果", "内容"+list.toString());
         listAdapter adapter = new listAdapter(this.getApplicationContext(), list);
         db.close();
         listview.setAdapter(adapter);
            
    }
    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        getMenuInflater().inflate(R.menu.accountlist, menu);
        
        return true;
    }
    
    @Override
    //id被点击元素的行id
    //视图在adapter中的位置
    //在AdapterView中被点击的视图(它是由adapter提供的一个视图)
    public void onItemClick(AdapterView<?> AdapterViewparent, View view, int position, long id) {
        // TODO Auto-generated method stub
          if(id<-1) {
                // 点击的是headerView或者footerView
                return;
            }
            int realPosition=(int)id;
          //  T item=getItem(realPosition);
            // 响应代码

            
    }
public List showall()
{
    list=new ArrayList();
    
    Cursor cur=db.getAllTitles();
    if(cur==null)
    {
        Log.i("查询结果", "weikong");
    }
    
    for(cur.moveToFirst();!cur.isAfterLast();cur.moveToNext())
     {
         good=new goods();//必须每次new一个对象  才能使得list add()不断添加
         int idColumn=cur.getColumnIndex("_id");
         int nameColumn = cur.getColumnIndex("name");
         int accColumn = cur.getColumnIndex("account");
         int phoneColumn = cur.getColumnIndex("pass");
        
         String name = cur.getString(nameColumn);
         String pass = cur.getString(phoneColumn);
         String account=cur.getString(accColumn);
         String id=cur.getString(idColumn);
         good.setId((int)Integer.parseInt(id));
         good.setName(name);
         good.setAccount(account);
         good.setPass(pass);
         Log.i("查询结果", "weikong"+good.getName());   
         list.add(good);
     }
    return list;
}
    @Override
    public boolean onMenuItemClick(MenuItem arg0) {
        // TODO Auto-generated method stub
        return false;
    }

}
    

下面这个是程序启动页面:

package com.example.passwordbox;

import android.os.Bundle;
import android.os.Handler;
import android.app.Activity;
import android.content.Intent;
import android.view.Menu;
import android.view.Window;
import android.view.WindowManager;

public class RunActivity extends Activity {

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
                WindowManager.LayoutParams.FLAG_FULLSCREEN);
        requestWindowFeature(Window.FEATURE_NO_TITLE);
        setContentView(R.layout.run);
        new Handler().postDelayed(new Runnable(){
            public void run()
            {
                RedirectNewActivity();
            }
            
        }, 2000);
    }
    
    public void RedirectNewActivity()
    {
        Intent intent=new Intent();
        intent.setClass(RunActivity.this, NewActivity.class);
        startActivity(intent);
        RunActivity.this.finish();
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        getMenuInflater().inflate(R.menu.run, menu);
        return true;
    }
}

下面这个是进去程序后的主页面:

package com.example.passwordbox;

import ImageAdapter.imageAdapter;
import android.os.Bundle;
import android.app.Activity;
import android.app.AlertDialog;
import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
import android.content.res.Resources;
import android.view.KeyEvent;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.Window;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.Button;
import android.widget.GridView;
import android.widget.ImageButton;

public class NewActivity extends Activity implements OnItemClickListener, OnClickListener{
    private Resources resMgr = null;
    Button bt1=null;
    @Override
    public void onCreate(Bundle savedInstanceState) {
         
        super.onCreate(savedInstanceState);
        requestWindowFeature(Window.FEATURE_CUSTOM_TITLE); 
        setContentView(R.layout.news);
        getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.titlebar);  //titlebar为自己标题栏的布局
        resMgr=getResources();
        bt1=(Button)findViewById(R.id.buttonn);
        bt1.setOnClickListener(this);
        GridView gridView = (GridView) findViewById(R.id.gridView1);

        String strContent[] = { resMgr.getString(R.string.add),
                resMgr.getString(R.string.show),
             };

        gridView.setAdapter(new imageAdapter(this, strContent));
        gridView.setOnItemClickListener(this);
    }

    private void close() {
        new AlertDialog.Builder(this)
                // .setIcon(R.drawable.services)
                .setTitle(R.string.MAINACTIVITY_POPUP_QUIT_TITLE)
                .setMessage(R.string.MAINACTIVITY_POPUP_QUIT_MESSAGE)
                .setNegativeButton(R.string.MAINACTIVITY_POPUP_QUIT_CANCEL,
                        new DialogInterface.OnClickListener() {
                            // @Override
                            public void onClick(DialogInterface dialog,
                                    int which) {
                            }
                        })
                .setPositiveButton(R.string.MAINACTIVITY_POPUP_QUIT_OK,
                        new DialogInterface.OnClickListener() {
                            public void onClick(DialogInterface dialog,
                                    int whichButton) {
                                finish();
                                //System.exit(0);
                            }
                        }).show();
    }

    /*
     * (non-Javadoc)
     * 
     * @see android.app.Activity#dispatchKeyEvent(android.view.KeyEvent)
     */
    @Override
    public boolean dispatchKeyEvent(KeyEvent event) {
        // TODO Auto-generated method stub
        if (event.getKeyCode() == KeyEvent.KEYCODE_BACK) {
            if (event.getAction() == KeyEvent.ACTION_DOWN
                    && event.getRepeatCount() == 0) {
                close();// 这是自定义的代码
            }
            return true;
        }
        return super.dispatchKeyEvent(event);
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu){
        super.onCreateOptionsMenu(menu);
        menu.add(0,0,0,"设置");//第二个参数是menu的id,第4个参数是菜单显示的内容,其余的不重要。
        menu.add(0,1,0,"关于");
        menu.add(0,2,0,"退出");
        return true;
    }
    @Override
    public boolean onOptionsItemSelected(MenuItem item){
        super.onOptionsItemSelected(item);
        switch(item.getItemId())
        {
        case 0:
            break;
        case 1:
            
            
            new AlertDialog.Builder(this)  
            
                            .setTitle("关于")
            
                            .setMessage("本软件为爱心制作")
            
                            .setPositiveButton("确定", null)
            
                            .show();
            break;
        case 2:
            this.finish();
            break;
        
        }
        return true;
    }


    @Override
    public void onItemClick(AdapterView<?> parent, View v, int position, long arg3) {
        // TODO Auto-generated method stub
        switch(position){
        case 0:
        {
            Intent intent1=new Intent();
            intent1.setClass(NewActivity.this, AddaccountActivity.class);
            startActivity(intent1);
            NewActivity.this.finish();
            break;
        }
        case 1:
        {
            Intent intent2=new Intent();
            intent2.setClass(NewActivity.this, AccountlistActivity.class);
            startActivity(intent2);
            NewActivity.this.finish();
            break;
        }
            
        }
    }
    @Override
    public boolean onKeyDown(int keyCode, KeyEvent event) {
        // TODO Auto-generated method stub

        if (keyCode == KeyEvent.KEYCODE_BACK) {
            close();
            return true;
        } else {
            return super.onKeyDown(keyCode, event);
        }

    }
    @Override
    public void onClick(View v) {
        // TODO Auto-generated method stub
         close();
    }
}

下面这个是添加账号信息的activity:

package com.example.passwordbox;

import database.DBAdapter;
import android.os.Bundle;
import android.app.Activity;
import android.app.AlertDialog;
import android.content.Intent;
import android.util.Log;
import android.view.Menu;
import android.view.View;
import android.view.Window;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;

public class AddaccountActivity extends Activity {
    private Button btt1=null;
    private Button btt2=null;
    private Button btt3=null;
    EditText tx1=null;
    EditText tx2=null;
    EditText tx3=null;
    DBAdapter db=null;
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);   
        setContentView(R.layout.addaccount);
        getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.titlebar);  //titlebar为自己标题栏的布局
        db = new DBAdapter(this);

        tx1=(EditText)findViewById(R.id.editText1);
        tx2=(EditText)findViewById(R.id.editText2);
        tx3=(EditText)findViewById(R.id.editTextacc);
        btt1=(Button)findViewById(R.id.buttonn);
        btt1.setOnClickListener(new Button.OnClickListener()
        {
            public void onClick(View v)
            {
                Intent intent1=new Intent();
                intent1.setClass(AddaccountActivity.this, NewActivity.class);
                startActivity(intent1);
                AddaccountActivity.this.finish();
            }
        });
        btt2=(Button)findViewById(R.id.buttonm);
        btt2.setOnClickListener(new Button.OnClickListener()
        {
            public void onClick(View v)
            {
                Intent intent2=new Intent();
                intent2.setClass(AddaccountActivity.this, NewActivity.class);
                startActivity(intent2);
                AddaccountActivity.this.finish();
            }
        });
        btt3=(Button)findViewById(R.id.button10);
        btt3.setOnClickListener(new Button.OnClickListener()
        {

            @Override
            public void onClick(View v) {
                // TODO Auto-generated method stub
                if(tx1.getText().length()!=0||tx1.getText().length()!=0)
                {    
                    db.open();
                     long id=db.insertTitle(tx1.getText().toString(),tx3.getText().toString(), tx2.getText().toString());
                     Log.i("插入结果", "id"+id);
                     db.close();
                    Intent intent2=new Intent();
                    intent2.setClass(AddaccountActivity.this, AccountlistActivity.class);
                    startActivity(intent2);
                    AddaccountActivity.this.finish();
                }
                else
                {
                new AlertDialog.Builder(AddaccountActivity.this).setMessage("本框不能为空!").setPositiveButton("确定", null).show(); 
                }
            }
            
        });
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        getMenuInflater().inflate(R.menu.addaccount, menu);
      
        return true;
    }
}

实体类:

package database;

public class goods {
    private int id;
    private String name;
    private String account;
    private String pass;
    
    public int getId() {
        return id;
    }
    public void setId(int id) {
        this.id = id;
    }
    public String getAccount() {
        return account;
    }
    public void setAccount(String account) {
        this.account = account;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public String getPass() {
        return pass;
    }
    public void setPass(String pass) {
        this.pass = pass;
    }
    

}

数据库操作类:

package database;

import android.content.ContentValues;
import android.content.Context;
import android.database.Cursor;
import android.database.SQLException;
import android.database.sqlite.SQLiteCursor;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
import android.util.Log;

//库表中两个字段AppName  AppPass
public class DBAdapter {
    
    public static final String KEY_ROWID = "_id";
    public static  final String AppName="name";
    public static  final String AppAccount="account";
    public static final String AppPass="pass";
    private static final String TAG = "DBAdapter";
    private static final String DATABASE_NAME = "BOX";
    private static final String DATABASE_TABLE = "yuyu";
    private static final int DATABASE_VERSION = 1;
    private static final String DATABASE_CREATE =
    "create table yuyu (_id integer primary key autoincrement, "
    + "name text not null,account text not null, pass text not null);";
    private final Context context;
    private DatabaseHelper DBHelper;
    private SQLiteDatabase db;
    
    public DBAdapter(Context ctx)
    {
    this.context = ctx;
    DBHelper = new DatabaseHelper(context);
    }
    
    
    private static class DatabaseHelper extends SQLiteOpenHelper
    {
    DatabaseHelper(Context context)
    {
    super(context, DATABASE_NAME, null, DATABASE_VERSION);
    }
    //创建一个新的数据库
    public void onCreate(SQLiteDatabase db)
    {
    db.execSQL(DATABASE_CREATE);
    }
    //升级数据库
    public void onUpgrade(SQLiteDatabase db, int oldVersion,
    int newVersion)
    {
    Log.w(TAG, "Upgrading database from version " + oldVersion
    + " to "
    + newVersion + ", which will destroy all old data");
    db.execSQL("DROP TABLE IF EXISTS titles");
    onCreate(db);
    }
    }
    //---打开数据库---

    public DBAdapter open() throws SQLException
    {
    db = DBHelper.getWritableDatabase();
    return this;
    }
    //---关闭数据库---

    public void close()
    {
    DBHelper.close();
    }
    //---向数据库插入一个标题---

    public long insertTitle(String name,String account ,String pass)
    {
    ContentValues initialValues = new ContentValues();
    //initialValues.put(KEY_ROWID, _id);
    initialValues.put(AppName, name);
    initialValues.put(AppAccount, account);
    initialValues.put(AppPass, pass);
    return db.insert(DATABASE_TABLE, null, initialValues);
    }
    //---删除一个指定的标题---

    public boolean deleteTitle(long rowId)
    {
    return db.delete(DATABASE_TABLE, KEY_ROWID + "=" + rowId, null) > 0;
    }
    //---检索所有标题---

    public Cursor getAllTitles()
    {
    return db.query(DATABASE_TABLE, new String[] {KEY_ROWID,AppName,AppAccount,AppPass},null,null,null,null,null);
    }
    //---检索一个指定的标题---

    public Cursor getTitle(long rowId) throws SQLException
    {
    Cursor mCursor =
    db.query(true, DATABASE_TABLE, new String[] {
    KEY_ROWID,
    
    AppName,
    AppAccount,
    AppPass
    },
    KEY_ROWID + "=" + rowId,
    null,
    null,
    null,
    null,
    null);
    if (mCursor != null) {
    mCursor.moveToFirst();
    }
    return mCursor;
    }
    //---更新一个标题---

    public boolean updateTitle(long rowId,
    String name,String account, String pass)
    {
    ContentValues args = new ContentValues();
    args.put(AppName, name);
    args.put(AppAccount, account);
    args.put(AppPass, pass);
    return db.update(DATABASE_TABLE, args,
    KEY_ROWID + "=" + rowId, null) > 0;
    }


}

主页面上两个图标的适配类:

package ImageAdapter;




import com.example.passwordbox.R;

import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ImageView;
import android.widget.TextView;



public class imageAdapter extends BaseAdapter {
    private Integer[] arrImage = { R.drawable.epurse, R.drawable.ecard,
             };

    String arrText[] = null;// {"登录", "充值", "消费", "查询余额", "历史记录", "设置", "关于",
                            // "帮助","退出"};
    private Context mContext;

    public imageAdapter(Context context, String[] arrText) {
        mContext = context;
        this.arrText = arrText;
    }

    public int getCount() {
        return arrImage.length;
    }

    /*
     * (non-Javadoc)
     * 
     * @see android.widget.Adapter#getView(int, android.view.View,
     * android.view.ViewGroup)
     */
    @Override
    public View getView(int position, View convertView, ViewGroup parent) {
        // TODO Auto-generated method stub
        ViewHolder holder = new ViewHolder();
        if (convertView == null) {
            LayoutInflater mInflater = LayoutInflater.from(mContext);
            convertView = mInflater.inflate(R.layout.item, null);
            holder.image = (ImageView) convertView.findViewById(R.id.ItemImage);
            holder.text = (TextView) convertView.findViewById(R.id.ItemText);
            convertView.setTag(holder);
        } else {
            holder = (ViewHolder) convertView.getTag();// imageview=(ImageView)
                                                        // convertView;
        }
        holder.image.setImageResource(arrImage[position]);
        holder.text.setText(arrText[position]);
        return convertView;
    }

    public Object getItem(int position) {
        // TODO Auto-generated method stub
        return null;
    }

    public long getItemId(int position) {
        // TODO Auto-generated method stub
        return 0;
    }

    private static class ViewHolder {
        ImageView image;// 图片
        TextView text;// 文字
    }
}

list列表的适配类:

package ImageAdapter;

import java.util.List;

import com.example.passwordbox.R;

import database.goods;

import android.content.Context;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.TextView;

public class listAdapter extends BaseAdapter{
        private List<goods> list;//绑定的数据集
        //private int source;//资源布局文件
        Context mContext;
        private LayoutInflater inflater;    
        //布局填充器,Android的内置服务,作用:使用xml文件来生成对应的view对象
        public listAdapter (Context context,List<goods> good)//int resource
        {
            this.list=good;
            //this.source=resource;
            this.mContext=context;
             //得到布局填充服务
            inflater = (LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);

        }
    @Override
    public int getCount() {
        // TODO Auto-generated method stub
        return list.size();
    }

    @Override
    public Object getItem(int arg0) {
        // TODO Auto-generated method stub
        return list.get(arg0);
    }

    @Override
    public long getItemId(int arg0) {
        // TODO Auto-generated method stub
        return arg0;
    }

    @Override
    
    public View getView(int position, View convertView, ViewGroup arg2) {
        // TODO Auto-generated method stub
          //判断是否为第一页
          //提供缓存机制
          ViewCache cache;
         if(convertView == null){
         //为条目创建View对象,生成条目界面对象
        convertView = inflater.inflate(R.layout.txview, null);
         //得到当前条目的数据
         cache = new ViewCache();
        cache .name = (TextView)convertView.findViewById(R.id.textView5);
        cache .account = (TextView)convertView.findViewById(R.id.textView6);
        
        cache.pass = (TextView)convertView.findViewById(R.id.textView7);
          
         //用视图标识临时存放缓存数据
          // convertView.setTag(cache);
                
         }
         else
         {
             cache = (ViewCache) convertView.getTag();

         }

         //得到当前条目对象
          goods stu=new goods();
          stu = list.get(position);
          Log.i("list内容", ""+list.toString());
         //为当前条目赋值
          
          cache.name.setText("        "+stu.getName().toString()+"     ");
          cache.account.setText("         "+stu.getAccount());//转化成string
          cache.pass.setText("                   "+stu.getPass().toString());
         convertView.setTag(cache);
        return convertView;

    }
    private final class ViewCache
    {
        
        public TextView name;
        public TextView account;
        public TextView pass;
    }

}

具体的layout有好几个  不在这贴了,想要的同学可以找我,我发给你    我的qq:405356078   加的时候注明博客园   否则不加

 

 

posted @ 2012-10-09 14:43  小纯SDU  阅读(1943)  评论(8编辑  收藏  举报