当前位置:操作系统 > 安卓/Android >>

Android RoboGuice使用指南(18):Inject Resources

Roboguice 对访问res 目录下各种资源drawable, arrary, string 等也提供了注入支持。可以通过@InjectResource 很方便的应用所需资源。

本例修改Android ApiDemos示例解析(48):Content->Resources->Resources 使用Inject Resource方法来访问资源。

[java] public class InjectResourceDemo extends RoboActivity { 
  
 @InjectView (R.id.styled_text) TextView styled_text; 
 @InjectView (R.id.plain_text) TextView plain_text; 
 @InjectView (R.id.res1) TextView res1; 
 @Inject Resources res; 
 @InjectResource(R.string.styled_text) String str; 
  
 @Override 
 public void onCreate(Bundle savedInstanceState) { 
 super.onCreate(savedInstanceState); 
 setContentView(R.layout.injectresource); 
  
 //Use res to get the string resources  
 CharSequence cs=res.getText(R.string.styled_text); 
 // Note the use of  
 // CharSequence instead of String  
 // so we don't lose the style info.  
 styled_text.setText(cs); 
  
 // Use the same resource, but convert it to  
 // a string, which causes it  
 // to lose the style information.  
 plain_text.setText(str); 
 res1.setText(cs); 
  
 } 
  

public class InjectResourceDemo extends RoboActivity {
 
 @InjectView (R.id.styled_text) TextView styled_text;
 @InjectView (R.id.plain_text) TextView plain_text;
 @InjectView (R.id.res1) TextView res1;
 @Inject Resources res;
 @InjectResource(R.string.styled_text) String str;
 
 @Override
 public void onCreate(Bundle savedInstanceState) {
 super.onCreate(savedInstanceState);
 setContentView(R.layout.injectresource);
 
 //Use res to get the string resources
 CharSequence cs=res.getText(R.string.styled_text);
 // Note the use of
 // CharSequence instead of String
 // so we don't lose the style info.
 styled_text.setText(cs);
 
 // Use the same resource, but convert it to
 // a string, which causes it
 // to lose the style information.
 plain_text.setText(str);
 res1.setText(cs);
 
 }
 
}

\
 

本例下载:/2012/0507/20120507111059873.zip



摘自 引路蜂移动软件
补充:移动开发 , Android ,
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,