Android学习笔记(四)Android 组件

简介:

EditText和setOnKeyListener事件实现文本处理 


 

复制代码
package com.example.test12;

import android.os.Bundle;
import android.app.Activity;
import android.view.KeyEvent;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.EditText;
import android.widget.TextView;
import android.support.v4.app.NavUtils;

public class MainActivity extends Activity {

    private TextView text;
    private EditText edit;
    
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        
        text=(TextView)findViewById(R.id.textView1);
        edit=(EditText)findViewById(R.id.editText1);
        
        edit.setOnKeyListener(editlistener);
    }

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

    View.OnKeyListener editlistener=new View.OnKeyListener() {
        
        public boolean onKey(View v, int keyCode, KeyEvent event) {
            // TODO Auto-generated method stub
            text.setText(edit.getText());
            return false;
        }
    };
}
复制代码

 

带背景图片的按钮


 

 

  使用ImageButton来实现带背景图片的按钮。

  OnFocusChangeListener焦点变化监听

  ImageButton.setImageResourse()用来指定按钮的背景颜色

复制代码
package com.example.test13;

import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.Button;
import android.widget.ImageButton;
import android.widget.TextView;
import android.support.v4.app.NavUtils;

public class MainActivity extends Activity {

    private TextView tv;
    private ImageButton ibt;
    private Button bt;
    
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        
        tv=(TextView)findViewById(R.id.textView1);
        ibt=(ImageButton)findViewById(R.id.imageButton1);
        bt=(Button)findViewById(R.id.button1);
        
        ibt.setOnFocusChangeListener(focusChange);
        bt.setOnClickListener(clicked);
        
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        getMenuInflater().inflate(R.menu.activity_main, menu);
        return true;
    }
    
    View.OnFocusChangeListener focusChange=new View.OnFocusChangeListener() {
        
        public void onFocusChange(View v, boolean hasFocus) {
            // TODO Auto-generated method stub
            if(hasFocus){
                tv.setText("Got Focus!!!");
                ibt.setImageResource(R.drawable.image1);
            }
            else{
                tv.setText("Lost Focus!!!");
                ibt.setImageResource(R.drawable.image2);
            }
        }
    };
    
    View.OnClickListener clicked=new View.OnClickListener() {
        
        public void onClick(View v) {
            // TODO Auto-generated method stub
            if(tv.getText()=="Got Focus!!!"){
                tv.setText("Lost Focus!!!");
                ibt.setImageResource(R.drawable.image2);
            }
            else{
                tv.setText("Got Focus!!!");
                ibt.setImageResource(R.drawable.image1);
            }
        }
    };   
}
复制代码

 

Toast实现提示条(Toast总结)


 

Toast.makeText()让文字显示与Toast对象中,会显示一段时间后自动消失。

Toast.makeText(
    MainActivity.this,
    "这个是Toast.makeText提示",
    Toast.LENGTH_LONG).show();

 

CheckBox和RadioButton复选框


 

  通过CheckBox.setOnCheckedChangeLister来监听CheckBox

 

相框的实现


 

可以通过ImageButton和ImageView来实现,推荐ImageButton,它可以直接添加点击监听

java.io.File实现文件搜索


 

在JAVA I/O的API中,提供了java.io.File对象。

复制代码
package com.example.test14;

import java.io.File;

import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;
import android.support.v4.app.NavUtils;

public class MainActivity extends Activity {

    private TextView result;
    private Button bt;
    private EditText edit;
    
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        
        result=(TextView)findViewById(R.id.textView2);
        bt=(Button)findViewById(R.id.button1);
        edit=(EditText)findViewById(R.id.editText1);
        
        bt.setOnClickListener(new Button.OnClickListener() {
            
            public void onClick(View v) {
                // TODO Auto-generated method stub
                String keyword=edit.getText().toString();
                if(keyword.equals("")){
                    Toast.makeText(
                            MainActivity.this,
                            "不能为空!",
                            Toast.LENGTH_LONG).show();
                }
                else{
                    result.setText(searchFile(keyword));
                }
            }
        });
    }

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

    private String searchFile(String Keyword){
        String searchResult="";
        File[] files=new File("/").listFiles();
        for(File f:files){
            if(f.getName().indexOf(Keyword)>=0)
                searchResult+=f.getPath()+"\n";// \n换行
        }
        if(searchResult.equals(""))
            searchResult="找不到文件!!!!";
        return searchResult;
    }
}
复制代码

 

 本文转自cococo点点博客园博客,原文链接:http://www.cnblogs.com/coder2012/archive/2013/05/17/3083991.html,如需转载请自行联系原作者

相关文章
|
10月前
|
Android开发
Android 一键屏锁的实现
Android 一键屏锁的实现
82 0
|
算法 Android开发
Android的路接下来该怎么走?
其实想写这篇文章好久了,很多小伙伴们也经常在群里探讨android移动开发者的走向,一部分人都想多快好省,间歇性踌躇满志、持续性混吃等死 ,只想用CV的开发模式们快速完成工作,然后回家王者农药。其实这种现象很普遍,我想告诉你的是 ,只要你走对方向,不断地学习,android的春天依然是健在的。
8880 0
|
Android开发 数据格式 XML
|
Android开发 API
Android BaseRecyclerViewAdapterHelper使用
BaseRecyclerViewAdapterHelper项目下载 1 . 使用 // 基类 具体实现类 布局 数据源 ...
2458 0
|
消息中间件 Android开发
|
存储 Android开发 数据安全/隐私保护
|
API Android开发 文字识别
Android 技术周报_W3
Android 技术周报_W3
1885 0
|
Android开发 iOS开发
|
安全 测试技术 Android开发