• startActivityForResult 页面跳转回调


    import java.io.Serializable;
    import java.util.ArrayList;
    import java.util.HashMap;
    import java.util.List;
    import java.util.Map;
    
    import android.os.Bundle;
    import android.app.Activity;
    import android.app.AlertDialog;
    import android.app.AlertDialog.Builder;
    import android.app.Dialog;
    import android.content.DialogInterface;
    import android.content.Intent;
    import android.graphics.Color;
    import android.view.Menu;
    import android.view.View;
    import android.view.View.OnClickListener;
    import android.widget.AdapterView;
    import android.widget.AdapterView.OnItemClickListener;
    import android.widget.Button;
    import android.widget.GridView;
    import android.widget.SimpleAdapter;
    import android.widget.TextView;
    import android.widget.Toast;
    
    public class MainActivity extends Activity {
    
        private Button button_add;
        private GridView gv;
         List<Map<String, String>> list = new ArrayList<Map<String, String>>();
    
        @Override
        protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    
            if (requestCode == 1 && resultCode == 1) {
                // 获取map集合
                final HashMap<String, String> map = (HashMap<String, String>) data
                        .getSerializableExtra("map");
    
                // 将map集合添加到list集合中
                
                list.add(map);
    
                // 为gridview设置适配器
                final SimpleAdapter adapter = new SimpleAdapter(MainActivity.this, list,
                        R.layout.item, new String[] { "name", "author" },
                        new int[] { R.id.item_name, R.id.item_author });
                gv.setAdapter(adapter);
    
                // 为gv设置条目点击监听事件
                gv.setOnItemClickListener(new OnItemClickListener() {
    
                    @Override
                    public void onItemClick(AdapterView<?> parent, View view,
                            final int position, long id) {
    
                    gv.setSelector(android.R.color.holo_red_light);
    
                        new AlertDialog.Builder(MainActivity.this)
                                .setTitle("确认删除")
                                .setMessage("确认删除吗?")
                                .setNegativeButton("取消",
                                        new DialogInterface.OnClickListener() {
    
                                            @Override
                                            public void onClick(
                                                    DialogInterface dialog,
                                                    int which) {
                                                Toast.makeText(MainActivity.this,
                                                        "您放弃了删除", 0).show();
    
                                            }
                                        }).setPositiveButton("确认", new DialogInterface.OnClickListener() {
                                            
                                            @Override
                                            public void onClick(DialogInterface dialog, int which) {
                                                 
                                                Toast.makeText(MainActivity.this,
                                                        "删除成功", 0).show();
                                                list.remove(position);
                                                adapter.notifyDataSetChanged();
                                            }
                                        }).show();
    
                    }
                });
    
            }
    
        }
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
    
            // 寻找控件
            findView();
    
            // 为添加按钮设置点击监听事件
            setClick();
        }
    
        private void setClick() {
    
            button_add.setOnClickListener(new OnClickListener() {
    
                @Override
                public void onClick(View v) {
    
                    // 回调跳转到添加界面
                    Intent intent = new Intent(MainActivity.this, AddActivity.class);
                    startActivityForResult(intent, 1);
    
                }
            });
    
        }
    
        private void findView() {
    
            button_add = (Button) findViewById(R.id.button_add);
            gv = (GridView) findViewById(R.id.gv);
            TextView tv = (TextView) findViewById(R.id.tv_manager);
    
        }
    
    }
    import java.util.HashMap;
    import java.util.Map;
    
    import android.os.Bundle;
    import android.app.Activity;
    import android.content.Intent;
    import android.text.TextUtils;
    import android.view.Menu;
    import android.view.View;
    import android.view.View.OnClickListener;
    import android.widget.Button;
    import android.widget.EditText;
    import android.widget.Toast;
    
    public class AddActivity extends Activity {
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_add);
            
            
            //找到该布局文件下的控件
            final EditText edit_name=(EditText) findViewById(R.id.edit_name);
            final EditText edit_author=(EditText) findViewById(R.id.edit_author);
            Button button_a=(Button) findViewById(R.id.button_a);
            
            //点击添加按钮实现监听事件
            button_a.setOnClickListener(new OnClickListener() {
                
                @Override
                public void onClick(View v) {
                     
                    //获取输入框中的信息 
                    String name = edit_name.getText().toString();
                    String author = edit_author.getText().toString();
                    
                    if(TextUtils.isEmpty(name))
                    {
                        Toast.makeText(AddActivity.this, "图书名字不能为空", 0).show();
                        return;
                    }
    
                    if(TextUtils.isEmpty(author))
                    {
                        Toast.makeText(AddActivity.this, "作者不能为空", 0).show();
                        return;
                    }
                    
                    //将页面信息封存为map集合
                    HashMap<String, String> map=new HashMap<String, String>();
                    map.put("name", name);
                    map.put("author", author);
                    
                    //将map集合存放在intent中并回调到主界面
                    Intent intent = getIntent();
                    intent.putExtra("map", map);
                    setResult(1, intent);
                    
                    //将本界面关闭
                    finish();
                    
                    
                }
            });
        }
    
     
    
    }
  • 相关阅读:
    Atitit.检测文本文件的编码 自动获取文件的中文编码
    Atitit. 衡量项目规模 ----包含的类的数量 .net java类库包含多少类 多少个api方法??
    Atitit. 衡量项目规模 ----包含的类的数量 .net java类库包含多少类 多少个api方法??
    Atitit.获取主板与bios序列号获取硬件设备信息  Wmi wmic 的作用
    Atitit.获取主板与bios序列号获取硬件设备信息  Wmi wmic 的作用
    Atitit.播放系统的选片服务器,包厢记时系统 的说明,教程,维护,故障排查手册p825
    Atitit.播放系统的选片服务器,包厢记时系统 的说明,教程,维护,故障排查手册p825
    atitit.提升兼容性最佳实践 p825.doc
    atitit.提升兼容性最佳实践 p825.doc
    10个最好的 jQuery 视频插件(转)
  • 原文地址:https://www.cnblogs.com/1426837364qqcom/p/5197267.html
Copyright © 2020-2023  润新知