Roboguice学习之视图注入

简介: Robuguide的使用 准备工作:   首先在项目中必须实现GreetingModule和RoboguiceDemoApplication GreetingModule.java import com.

Robuguide的使用

准备工作:

 

首先在项目中必须实现GreetingModule和RoboguiceDemoApplication

GreetingModule.java

import com.google.inject.AbstractModule;

 

public class GreetingModule extends AbstractModule {

 

    @Override

    protected void configure() {

    }

 

}

RoboguiceDemoApplication.java

import roboguice.application.RoboApplication;

 

public class RoboguiceDemoApplication extends RoboApplication{

 

}

在values文件夹下必须出现如下文件:

 

Roboguice.xml文件中item对应工程中对应的GreetingModule

<?xml version="1.0" encoding="utf-8"?>

<resources>

    <string-array name="roboguice_modules">

        <item>com.pstreets.roboguice.demo.GreetingModule</item>

    </string-array>

</resources>

视图注入:

Activity必须继承实现RoboActivity

Demo如下:

public class InjectViewDemo extends RoboActivity {

   

    @InjectView (R.id.button) Button goButton;

    @InjectView (R.id.textview1) TextView textView1;

    @InjectView (R.id.textview2) TextView textView2;

    @InjectView (R.id.textview3) TextView textView3;

    @InjectView (R.id.textview4) TextView textView4;

   

    @Override

    public void onCreate(Bundle savedInstanceState) {

     super.onCreate(savedInstanceState);

     

     setContentView(R.layout.injectview);

         goButton.setOnClickListener(mGoListener);

     }

 

     private OnClickListener mGoListener = new OnClickListener()

     {

         public void onClick(View v)

         {

         textView1.setText("Clicked");

         textView2.setText("Clicked");

         textView3.setText("Clicked");

         textView4.setText("Clicked");

         }

     };

}

视图界面:

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout

  xmlns:android="http://schemas.android.com/apk/res/android"

  android:orientation="vertical"

  android:layout_width="match_parent"

  android:layout_height="match_parent">

 

  <TextView 

    android:id="@+id/textview1"

    android:layout_width="fill_parent"

    android:layout_height="wrap_content"

    android:text="@string/injectview"

    />

   

   <TextView 

    android:id="@+id/textview2"

    android:layout_width="fill_parent"

    android:layout_height="wrap_content"

    android:text="@string/injectview"

    />

   

    <TextView 

    android:id="@+id/textview3"

    android:layout_width="fill_parent"

    android:layout_height="wrap_content"

    android:text="@string/injectview"

    />

   

    <TextView 

    android:id="@+id/textview4"

    android:layout_width="fill_parent"

    android:layout_height="wrap_content"

    android:text="@string/injectview"

    />

   

   <Button android:id="@+id/button"

            android:layout_width="wrap_content"

            android:layout_height="wrap_content"

            android:layout_gravity="center_vertical"

            android:text="@string/clickmebutton"/>

   

</LinearLayout>

 

相关文章
|
4月前
|
XML 存储 Java
SpringMVC中支持的那些视图解析技术
SpringMVC中支持的那些视图解析技术
61 0
|
12天前
|
Java 关系型数据库 MySQL
高级对象装配:解析Spring创建复杂对象的秘诀
高级对象装配:解析Spring创建复杂对象的秘诀
27 0
高级对象装配:解析Spring创建复杂对象的秘诀
|
3月前
|
SQL 前端开发 安全
视图的作用
视图的作用。
25 1
|
3月前
|
设计模式 Java 数据库连接
面试题:一个组件向自己内部注入组件有哪些方法?
面试题:一个组件向自己内部注入组件有哪些方法?
21 0
|
3月前
|
Java Spring 容器
面试题:Spring框架中,一个组件是怎样向自己内部注入组件的
面试题:Spring框架中,一个组件是怎样向自己内部注入组件的
14 0
|
9月前
|
JSON 安全 前端开发
【Django学习】(四)子应用改写函数视图为类视图
【Django学习】(四)子应用改写函数视图为类视图
|
开发者 Python
对CBV视图的探究(1)数据显示视图
对CBV视图的探究(1)数据显示视图
44 0
|
Web App开发 Java
自定义JSP标签->概念->生命周期
自定义JSP标签->概念->生命周期
自定义JSP标签->概念->生命周期
|
Android开发
【IOC 控制反转】Android 视图依赖注入 ( 视图依赖注入步骤 | 视图依赖注入代码示例 )(二)
【IOC 控制反转】Android 视图依赖注入 ( 视图依赖注入步骤 | 视图依赖注入代码示例 )(二)
99 0
【IOC 控制反转】Android 视图依赖注入 ( 视图依赖注入步骤 | 视图依赖注入代码示例 )(二)
|
Java Android开发
【IOC 控制反转】Android 视图依赖注入 ( 视图依赖注入步骤 | 视图依赖注入代码示例 )(一)
【IOC 控制反转】Android 视图依赖注入 ( 视图依赖注入步骤 | 视图依赖注入代码示例 )(一)
99 0
【IOC 控制反转】Android 视图依赖注入 ( 视图依赖注入步骤 | 视图依赖注入代码示例 )(一)