服务器之家:专注于VPS、云服务器配置技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|Java教程|ASP教程|编程技术|正则表达式|C/C++|IOS|C#|Swift|Android|VB|R语言|JavaScript|易语言|vb.net|

服务器之家 - 编程语言 - Android - Android开发自学笔记(五):使用代码控制界面

Android开发自学笔记(五):使用代码控制界面

2021-03-15 15:36Android开发网 Android

这篇文章主要介绍了Android开发自学笔记(五):使用代码控制界面,本文讲解了添加第二个layout、添加MyActivity的code、setup函数、getResult函数等内容,需要的朋友可以参考下

酷酷的外表已经具备了,那就开始让我们真正把它的功能给实现起来吧,外强中干,花拳绣腿可不行哦,我们需要真正的本领,需要一颗自强不息的心哦,常常想想自己的梦想什么,这样才不会迷失自己,才会在茫茫的世界中找到自己前进的方向!我不会告诉你我刚看过《voice of china session 3》哦。

从上两节教程中,我们已经会搭出如下美美的布局了,欢迎翻页查阅:)

Android开发自学笔记(五):使用代码控制界面

android自学开发第四篇之布局上
android自学开发第五篇之布局下

 

添加第二个layout
关于layout布局我们不再赘述,这里再额外添加一个layout页面用来显示搜索结果的,我们依然选择linearlayout,这个layout同样是viewgroup的实例化,我们在里面添加一个view用来显示结果,这个view为webview。

?
1
2
3
4
5
6
7
8
9
<linearlayout xmlns:android="http://schemas.android.com/apk/res/android"
 xmlns:tools="http://schemas.android.com/tools"
 android:layout_width="match_parent"
 android:layout_height="match_parent"
 android:orientation="horizontal">
 <webview android:id="@+id/wv_result"
 android:layout_width="match_parent"
 android:layout_height="match_parent" />
</linearlayout>

并定义webview的id为wv_result,ok,这个layout我们姑且把它叫做show_result.xml,这个页面就是如此之简单。

添加myactivity的code
接下来好戏就要来了,先看看文件结构吧,不然纸上空谈兵,我自己都受不了。

Android开发自学笔记(五):使用代码控制界面

这个myactivity是我从创建这个helloandroid工程中默认生成的activity修改而来的,这个无所谓叫什么名字,我们先打开它,还记得我们曾经把这张activity绑定了search这个layout了吗?先简单介绍下每个activity都有多个回调函数(即on打头的onxxx系列函数),其中有oncreate,onstart,onresume,onstop等,这些函数描述了这张activity的生命周期(life-cycle),这个很重要回头我会详细给自己做一个review,我们需要做的是在oncreate中添加自己的代码,这个函数是myactivity一打开就运行的。

我打算在myactivity的这个oncreate函数添加三句代码。

 

setcontentview我们先暂时理解为绑定函数,我们绑定了search这个layout。

setup是我自己创建的函数,主要作用是为绑定及初始化search这个layout的各个view以及为它们绑定监听事件。

getresult同样为我自己创建的,主要用来传递点击事件信息及获取搜索结果。

?
1
2
3
4
5
6
7
@override
public void oncreate(bundle savedinstancestate) {
  super.oncreate(savedinstancestate);
  setcontentview(r.layout.search);
  setup();
  getresult();
}

 

setup函数如下

?
1
2
3
4
public void setup() {
  msearchbtn = (button) findviewbyid(r.id.btn_search);
  menteredittext = (edittext) findviewbyid(r.id.edit_message);
}

 

这个setup很简单及获取search中的搜索按钮及搜索框。

getresult函数如下

?
1
2
3
4
5
6
7
8
9
10
11
12
public void getresult() {
  msearchbtn.setonclicklistener(new view.onclicklistener() {
    @override
    public void onclick(view view) {
      //to change body of implemented methods use file | settings | file templates.
      string entercontent = menteredittext.gettext().tostring();
      intent in = new intent(myactivity.this, resultactivity.class);
      in.putextra(extra_message, entercontent);
      startactivity(in);
    }
  });
}

getresult函数为搜索按钮绑定了点击事情的listener(监x器),一旦用户点击这个搜索按钮,我们动作为获取搜索框的内容并封装到extra_message中去,然后将这个extra_message附加到intent中,并使用startactivity函数调出搜索结果页面。

添加搜索结果的code
搜索结果的动作我们也已经准备好了,我们一开始就准备的show_result.xml就是要为它服务的,现在我们定一个另外一个activity,名字为resultactivity。

这个resultactivity需要做的事情很简单:

?
1
2
3
4
5
6
7
8
9
10
@override
 protected void oncreate(bundle savedinstancestate) {
   super.oncreate(savedinstancestate);
   setcontentview(r.layout.show_result);
 
   mwebview = (webview)findviewbyid(r.id.wv_result);
   intent in = getintent();
   string message = in.getstringextra(myactivity.extra_message);
   mwebview.loadurl("http://www.baidu.com.cn/s?wd=" + message);
 }

 

同样我们在oncreate函数中完成webview的绑定,并从上一个activity(即myactivity)中的 intent获取extra_message的值,并调用百度的接口,打开就可以。

 

Android开发自学笔记(五):使用代码控制界面
比如搜索ourunix,并点击搜索按钮就会出现如下页面:
Android开发自学笔记(五):使用代码控制界面
我在这一篇文章中并没有过分强调android的四大组件之一的activity的生命周期以及组件及组件的粘合的intent,本篇文章主要让初学者能够尽快上手android,并体验到android开发的简单容易,关于activity的生命周期以及其他组件我会在后面一一讲解。

延伸 · 阅读

精彩推荐
  • AndroidAndroid界面效果UI开发资料汇总(附资料包)

    Android界面效果UI开发资料汇总(附资料包)

    android ui界面设计,友好的界面会提高用户体验度;同时也增强了android ui界面设计的难度,本文提供了一些常用开发资料(有下载哦)感兴趣的朋友可以了解下...

    Android开发网4652021-01-03
  • Android汇总Android视频录制中常见问题

    汇总Android视频录制中常见问题

    这篇文章主要汇总了Android视频录制中常见问题,帮助大家更好地解决Android视频录制中常见的问题,需要的朋友可以参考下...

    yh_thu5192021-04-28
  • AndroidAndroid中AsyncTask详细介绍

    Android中AsyncTask详细介绍

    这篇文章主要介绍了Android中AsyncTask详细介绍,AsyncTask是一个很常用的API,尤其异步处理数据并将数据应用到视图的操作场合,需要的朋友可以参考下...

    Android开发网7432021-03-11
  • AndroidAndroid程序设计之AIDL实例详解

    Android程序设计之AIDL实例详解

    这篇文章主要介绍了Android程序设计的AIDL,以一个完整实例的形式较为详细的讲述了AIDL的原理及实现方法,需要的朋友可以参考下...

    Android开发网4622021-03-09
  • AndroidAndroid CardView+ViewPager实现ViewPager翻页动画的方法

    Android CardView+ViewPager实现ViewPager翻页动画的方法

    本篇文章主要介绍了Android CardView+ViewPager实现ViewPager翻页动画的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧...

    Abby代黎明9592022-03-02
  • AndroidAndroid实现Service获取当前位置(GPS+基站)的方法

    Android实现Service获取当前位置(GPS+基站)的方法

    这篇文章主要介绍了Android实现Service获取当前位置(GPS+基站)的方法,较为详细的分析了Service基于GPS位置的技巧,具有一定参考借鉴价值,需要的朋友可以参考下...

    Ruthless8332021-03-31
  • AndroidAndroid编程解析XML方法详解(SAX,DOM与PULL)

    Android编程解析XML方法详解(SAX,DOM与PULL)

    这篇文章主要介绍了Android编程解析XML方法,结合实例形式详细分析了Android解析XML文件的常用方法与相关实现技巧,需要的朋友可以参考下...

    liuhe68810042021-05-03
  • AndroidAndroid实现固定屏幕显示的方法

    Android实现固定屏幕显示的方法

    这篇文章主要介绍了Android实现固定屏幕显示的方法,实例分析了Android屏幕固定显示所涉及的相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下...

    鉴客6182021-03-27