视图练习

package com.hanqi.zuoyee;

import android.app.AlertDialog;
import android.content.DialogInterface;
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.BaseAdapter;
import android.widget.EditText;
import android.widget.ImageView;
import android.widget.ListView;
import android.widget.TextView;
import android.widget.Toast;

import java.util.ArrayList;
import java.util.List;

public class jm extends AppCompatActivity {
    ListView listView;
    List<nei> list=new ArrayList<>();
    final base bb=new base();
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.jmm);
        listView=(ListView)findViewById(R.id.lv);
        list.add(new nei(R.drawable.a,"怪物","这就是怪物"));
        list.add(new nei(R.drawable.a,"怪物2","这就是怪物2"));
        list.add(new nei(R.drawable.a,"怪物3","这就是怪物3"));
        list.add(new nei(R.drawable.a,"怪物4","这就是怪物4"));
        list.add(new nei(R.drawable.a,"怪物5","这就是怪物5"));
        list.add(new nei(R.drawable.a,"怪物6","这就是怪物6"));
        list.add(new nei(R.drawable.a,"怪物7","这就是怪物7"));
        list.add(new nei(R.drawable.a,"怪物8","这就是怪物8"));
        list.add(new nei(R.drawable.a,"怪物9","这就是怪物9"));
        list.add(new nei(R.drawable.a,"怪物0","这就是怪物0"));

        listView.setAdapter(bb);
        listView.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener() {
            @Override
            public boolean onItemLongClick(AdapterView<?> parent, View view, int position, long id) {
                list.remove(position);
                bb.notifyDataSetChanged();
                Toast.makeText(jm.this, "已经删除", Toast.LENGTH_SHORT).show();
                return true;
            }
        });

        listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
            @Override
            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
                final nei nn=list.get(position);
                final View v = View.inflate(jm.this,R.layout.jmmss,null);
                AlertDialog al=new  AlertDialog.Builder(jm.this)
                        .setView(v)
                        .setTitle("输入要修改的内容")
                        .setPositiveButton("确定",new  DialogInterface.OnClickListener(){
                            @Override
                            public void onClick(DialogInterface dialog, int which) {
                                EditText editText=(EditText)v.findViewById(R.id.et1);
                                EditText editText2=(EditText)v.findViewById(R.id.et2);
                              String  t1=editText.getText().toString();
                              String  t2=editText2.getText().toString();
                                if(t1.trim().length()!=0&&t2.trim().length()!=0){
                                nn.setText1(t1);
                                nn.setText2(t2);
                                bb.notifyDataSetChanged();}
                                else {
                                    Toast.makeText(jm.this, "请正确输入", Toast.LENGTH_SHORT).show();
                               return;
                                }
                            }
                        })
                        .setCancelable(true)
                        .setNegativeButton("取消", null)
                        .show();

            }
        });
    }
    class nei{
        private int img;
        private  String text1;
        private  String text2;

        public int getImg() {
            return img;
        }

        public void setImg(int img) {
            this.img = img;
        }

        public String getText1() {
            return text1;
        }

        public void setText1(String text1) {
            this.text1 = text1;
        }

        public String getText2() {
            return text2;
        }

        public void setText2(String text2) {
            this.text2 = text2;
        }
        public nei(int img,String text1,String text2){
            this.img=img;
            this.text1=text1;
            this.text2=text2;
        }
    }
    class base extends BaseAdapter{
        @Override
        public int getCount() {
            return list.size();
        }

        @Override
        public Object getItem(int position) {
            return list.get(position);
        }

        @Override
        public long getItemId(int position) {
            return 0;
        }

        @Override
        public View getView(int position, View convertView, ViewGroup parent) {
            nei n=list.get(position);
            if(convertView==null){
                convertView=View.inflate(jm.this,R.layout.jmms,null);
            }
            ImageView imageView=(ImageView)convertView.findViewById(R.id.iv);
            TextView textView=(TextView)convertView.findViewById(R.id.tv1);
            TextView textView2=(TextView)convertView.findViewById(R.id.tv2);
            imageView.setImageResource(n.getImg());
            textView.setText(n.getText1());
            textView2.setText(n.getText2());
            return convertView;
        }
    }
    int ii=1;
    public void bb1(View v){

       final View vi=View.inflate(jm.this,R.layout.jmsss,null);
        AlertDialog aa=new AlertDialog.Builder(jm.this)
                .setTitle("输入内容")
                .setPositiveButton("保存", new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialog, int which) {
                        EditText e=(EditText)vi.findViewById(R.id.et1);
                        EditText e2=(EditText)vi.findViewById(R.id.et2);
                        final ImageView iv=(ImageView)vi.findViewById(R.id.iv1);
                        final ImageView iv2=(ImageView)vi.findViewById(R.id.iv2);
                        final ImageView iv3=(ImageView)vi.findViewById(R.id.iv3);

                        String s=e.getText().toString();
                        String s2=e2.getText().toString();
                        if(ii!=1&&s.trim().length()!=0&&s2.trim().length()!=0){
                            list.add(new nei(ii,s,s2));
                            bb.notifyDataSetChanged();
                        }
                        else {
                            Toast.makeText(jm.this, "请正确输入", Toast.LENGTH_SHORT).show();
                        }
                    }
                })
                .setNegativeButton("取消",null)
                .setCancelable(true)
                .setView(vi)
                .show();

    }
    public void o(View v){
        ii=R.drawable.a;
        Toast.makeText(jm.this, "图一", Toast.LENGTH_SHORT).show();
    }
    public void oo(View v){
        ii=R.drawable.aa;
        Toast.makeText(jm.this, "图2", Toast.LENGTH_SHORT).show();
    }
    public void ooo(View v){
        ii=R.drawable.aaa;
        Toast.makeText(jm.this, "图3", Toast.LENGTH_SHORT).show();
    }
}
时间: 2024-11-05 12:21:25

视图练习的相关文章

Django Book

The Django Book 2.0--中文版 第一章:介绍Django 本书所讲的是Django:一个可以使Web开发工作愉快并且高效的Web开发框架. 使用Django,使你能够以最小的代价构建和维护高质量的Web应用. 从好的方面来看,Web 开发激动人心且富于创造性:从另一面来看,它却是份繁琐而令人生厌的工作. 通过减少重复的代码,Django 使你能够专注于 Web 应用上有 趣的关键性的东西. 为了达到这个目标,Django 提供了通用Web开发模式的高度抽象,提供了频繁进行的编程

Oracle 10g通过创建物化视图实现不同数据库间表级别的数据同步

摘自:http://blog.csdn.net/javaee_sunny/article/details/53439980 目录(?)[-] Oracle 10g 物化视图语法如下 实例演示 主要步骤 在A节点创建原表和物化视图日志 在B节点创建连接A节点的远程链接 在B节点处创建目标表和与目标表名称相同的物化视图 在B节点处刷新物化视图 升级采用存储过程定时任务JOB方式定时刷新物化视图 进一步优化 文章更新记录 参考文章 Oracle 10g 物化视图语法如下: create materia

Android零基础入门第61节:滚动视图ScrollView

原文:Android零基础入门第61节:滚动视图ScrollView 前面几期学习了ProgressBar系列组件.ViewAnimator系列组件.Picker系列组件和时间日期系列组件,接下来几期继续来学习常见的其他组件. 一.ScrollView概述 从前面的学习有的同学可能已经发现,当拥有很多内容时屏幕显示不完,显示不全的部分完全看不见.但是在实际项目里面,很多内容都不止一个屏幕宽度或高度,那怎么办呢?那就需要本节学习的ScrollView来完成. 在默认情况下,ScrollView只是

Android零基础入门第60节:日历视图CalendarView和定时器Chronometer

原文:Android零基础入门第60节:日历视图CalendarView和定时器Chronometer 上一期学习了AnalogClock.DigitalClock和TextClock时钟组件,本期继续来学习日历视图CalendarView和定时器Chronometer. 一.CalendarView 日历视图(CalendarView)可用于显示和选择日期,用户既可选择一个日期,也可通过触 摸来滚动日历.如果希望监控该组件的日期改变,则可调用CalendarView的 setOnDateCha

手动创建CView视图

通过VC2010向导创建一个标准的MFC单文档框架,去掉文档/视图结构支持.然后,在资源中插入一个FormView窗口,在MainFrame的Create中创建并显示此视图窗口. CView *pView = (CMainView *)(RUNTIME_CLASS(CMainView)->CreateObject());   if(!pView)   {       MessageBox(_T("创建视图不成功!"));       return 0;   }      CRec

《spring boot》8.2章学习时无法正常启动,报“ORA-00942: 表或视图不存在 ”

在学习<spring boot>一书的过程中,由于原书作者难免有一些遗漏的的地方,或者系统.软件版本不一致.框架更新等各种因素,完全安装书中源码页不能实现项目的正常启动 在8.2章节,演示JPA对oracle的支持时,配置文件中设置了如下代码,正常情况下应该支持数据库自动创建序列和表,但实际启动时却报错"ORA-00942: 表或视图不存在 " spring.datasource.driverClassName=oracle.jdbc.OracleDriver spring

视图框架:Spring MVC 4.0(1)

目录 一.表单标签库 1.1.简介 1.2.常用属性 1.3.form标签与input标签 1.4.checkbox标签 1.5.radiobutton标签 1.6.password标签 1.7.select标签 1.8.option标签 1.9.options标签 1.10.textarea.errors标签 1.11.hidden标签 1.12.radiobuttons 单选列表与checkboxs复选列表 二.视图解析器 2.1.ViewResolver视图解析器 2.2.链式视图解析器

Atitit 数据库view视图使用推荐规范与最佳实践与方法

1. 视图的优点:1 1.1. **提升可读性  定制用户数据,聚焦特定的数据1 1.2. 使用视图,可以简化数据操作.       1 1.3. **提升扩展性 屏蔽底层表的重构变动,免编译免部署热更新2 1.4. B.查询简单化. 2 1.5. C.逻辑数据独立性. 2 1.6. 提高数据安全性,可以不让用户看到表中的某个字段.2 1.7. 合并分离的数据,创建分区视图       2 1.8. 模拟索引列3 2. 缺点3 2.1. 小部分场景下,复杂视图可能会有性能问题,可以使用带参数的s

MySQL系列:视图基本操作

1. 视图简介 1.1 视图定义 视图是一种虚拟的表,是从数据库中一个或多个表中导出来的表. 视图可以从已存在的视图的基础上定义. 数据库中只存放视图的定义,并没有存放视图中的数据,数据存放在原来的表中. 视图中的数据依赖于原来的表中的数据,表中的数据发生变化,显示在视图中的数据也会改变. 1.2 视图作用 (1)增加数据安全性 通过视图,用户只能查询和修改指定的数据. 数据库授权命令可以限制用户的操作权限,但不能限制到特定行和列上.使用视图可以将用户的权限限制到特定的行和列上. (2)提高表的

自定义视图

1.创建一个视图类实现spring的View接口,并且把视图类用@Component注解为sprinmvc组建(重要) package com.hy.springmvc.views; import java.util.Map; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.springframework.stereotype.Compo