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>

Roboguice学习之视图注入的更多相关文章

  1. ASP.NET MVC学习之视图篇(2)

    继ASP.NET MVC学习之视图(1)学习 4.HTML辅助器 虽然在ASP.NET MVC中我们已经摆脱了ASP.NET的控件,但是对于页面中需要循环标签的情况依然还是存在,可能很多人认为用for ...

  2. Spring 学习笔记 ----依赖注入

    依赖注入 有三种方式,本文只学习下属性注入. 属性注入       属性注入即通过 setXxx方法()注入Bean的属性值或依赖对象,由于属性注入方式具有可选择性和灵活性高的优点,因此属性注入方式是 ...

  3. Butter Knife:一个安卓视图注入框架

    Butter Knife:一个安卓视图注入框架 2014年5月8日 星期四 14:52 官网: http://jakewharton.github.io/butterknife/ GitHub地址: ...

  4. python之MySQL学习——防止SQL注入

    python之MySQL学习——防止SQL注入 学习了:https://www.cnblogs.com/xiaomingzaixian/p/7126840.html https://www.cnblo ...

  5. ADO学习笔记之注入漏洞与参数化查询

    ADO学习笔记之注入漏洞与参数化查询 作为新手,在学习ADO程序时,使用 sql 语言查询数据时,很容易写类似如下代码: using (SqlConnection con = new SqlConne ...

  6. DVWA学习之SQL注入

    DVWA学习之SQL注入 环境工具 dvwa 1.9 phpstudy firefox burpsuite 实验步骤 一.设置安全级别为LOW 1. 登录DVWA,并将安全级别设置为LOW 2. 进入 ...

  7. MySQL学习——操作视图

    MySQL学习——操作视图 摘要:本文主要学习了使用DDL语句操作视图的方法. 了解视图 是什么 视图是从一个.多个表或者视图中导出的表,包含一系列带有名称的数据列和若干条数据行. 特点 视图不是数据 ...

  8. Web安全学习笔记 SQL注入下

    Web安全学习笔记 SQL注入下 繁枝插云欣 --ICML8 SQL注入小技巧 CheatSheet 预编译 参考文章 一点心得 一.SQL注入小技巧 1. 宽字节注入 一般程序员用gbk编码做开发的 ...

  9. Web安全学习笔记 SQL注入上

    Web安全学习笔记 SQL注入上 繁枝插云欣 --ICML8 SQL注入分类 SQL注入检测 一.注入分类 1.简介 SQL注入是一种代码注入技术用于攻击数据驱动的应用程序在应用程序中,如果没有做恰当 ...

随机推荐

  1. UISwitch 开关控件

    UISwitch iOS中的开关控件,只有两种状态,打开或关闭. aSwitch.tintColor = [UIColor redColor]; //关闭状态下的渲染颜色 aSwitch.onTint ...

  2. ejabberd模块开发

    参考: http://anders.conbere.org/journal/ http://www.process-one.net/en/wiki/ejabberd_module_developmen ...

  3. E - Triangle

    Description Johnny has a younger sister Anne, who is very clever and smart. As she came home from th ...

  4. bshare

    function shareInit(){ $('.bshare').each(function(index, element) { var c1 = $('.p3-dialog').attr('ti ...

  5. gridControl 部分属性

    DEVexpress GridControl 属性设置 2013年11月22日 ⁄ 综合 ⁄ 共 18319字 ⁄ 字号 小 中 大 ⁄ 评论关闭 1. 如何解决单击记录整行选中的问题 View-&g ...

  6. Calendar.getInstance()获取当天指定点上的时间[转载]

    ctoday.add(Calendar.DAY_OF_MONTH, 1); 明天时间 //获得当天0点时间public static int getTimesmorning(){Calendar ca ...

  7. js通过keyCode值判断单击键盘上某个键,然后触发指定的事件

    当单击按键时触发事件    document.onkeydown = function (e) {             e = e || event;             if (e.keyC ...

  8. nefu 115 斐波那契的整除

    Description 已知斐波那契数列有如下递归定义,f(1)=1,f(2)=1, 且n>=3,f(n)=f(n-1)+f(n-2),它的前几项可以表示为1, 1,2 ,3 ,5 ,8,13, ...

  9. 【Machine Learning in Action --2】K-近邻算法构造手写识别系统

    为了简单起见,这里构造的系统只能识别数字0到9,需要识别的数字已经使用图形处理软件,处理成具有相同的色彩和大小:宽高是32像素的黑白图像.尽管采用文本格式存储图像不能有效地利用内存空间,但是为了方便理 ...

  10. MinGW 运行C++程序的方法

    1:安装好 MinGW 及 GCC 编译器后 , 当然 MinGW 全安装最保险了,不会太费劲 2:配置环境变量(注:可能需要重启后生效) 计算机 --> 属性 --> 高级系统设置 -- ...