当前位置:  编程技术>移动开发
本页文章导读:
    ▪不要interface builder        不用interface builder. 可以先看看这篇文章 http://ankyhe.iteye.com/blog/514908   看完了下面就是我要说的. ------------------------------------------------   "如何不用IB,则你的UIViewController实例拥有一个成员变量 .........
    ▪ 判断一个activity是不是存在于系统中        判断一个activity是否存在于系统中     已知包名和类名,如何判断这个activity是否在系统中存在呢?很简单,通过intent就行。 Intent intent = new Intent(); intent.setClassName("包名", "类名".........
    ▪ listView改变一上显示文字       listView改变一下显示文字 ListView list = (ListView) findViewById(R.id.list);adapter = new MyAdapter(this,R.layout.main,    R.id.row_text,    new String[]{"Uno", "Dos", "Tres"} );list.setAdapter(adapter); //Custom Adapter class private.........

[1]不要interface builder
    来源: 互联网  发布时间: 2014-02-18
不用interface builder.

可以先看看这篇文章 http://ankyhe.iteye.com/blog/514908

 

看完了下面就是我要说的.

------------------------------------------------

 

"如何不用IB,则你的UIViewController实例拥有一个成员变量 .view ".

 

有了这个就好办了,在- (void)loadView {}方法中先定义一个UIView,然后付给你的controller(self.view = xxx).

这样,controller就有view了(app delegate中你也可以将这个view加到UIWindow中了).

当然这个view也可以是其他的view,如UIScrollView.

 

-----------------------------------------------------

其他的上面的那篇ankyhe的文章写的很清楚.

如果你想知道那些用IB做出来的效果,用code如何实现,请google 'nib2objc'

 

个人观点:

用不用IB,我觉得那个方便就用那个来.二者混用其实很爽.


    
[2] 判断一个activity是不是存在于系统中
    来源: 互联网  发布时间: 2014-02-18
判断一个activity是否存在于系统中

    已知包名和类名,如何判断这个activity是否在系统中存在呢?很简单,通过intent就行。

        Intent intent = new Intent();
        intent.setClassName("包名", "类名");      
        if(getPackageManager().resolveActivity(intent, 0) == null) {
        	//说明系统中不存在这个activity
        }
1 楼 hsx9566 2010-09-08  
按你说的:
Intent intent = new Intent();  
intent.setClassName("包名", "类名"); 
      
intent.resolveActivity(getPackageManager()) 得到的都是“ComponentInfo{包名/类名}"

不管存不存在都不为null
2 楼 chroya 2010-09-08  
hsx9566 写道
按你说的:
Intent intent = new Intent();  
intent.setClassName("包名", "类名"); 
      
intent.resolveActivity(getPackageManager()) 得到的都是“ComponentInfo{包名/类名}"

不管存不存在都不为null

不是的,不存在的话,会返回null的
3 楼 hsx9566 2010-09-08  
我在2.1系统中试过,包名类名分别写aa,bb。
结果
if(intent.resolveActivity(getPackageManager()) == null) {  
   
}
里的语句是没出现。
倒是
if(intent.resolveActivity(getPackageManager()) != null) {  
   
}
里的语句能打印出。
不知怎么回事,请教下。
4 楼 hsx9566 2010-09-08  
楼主你那个项目试下
public class test extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main); 
        Intent i=new Intent();
        i.setClassName("aa", "bb");
if(i.resolveActivity(getPackageManager()) == null) {  
System.out.println("not exist");
}
if(i.resolveActivity(getPackageManager()) != null) {  
System.out.println("exist");
}
    }
}

这样的结果会打印出exist。
我正需要判断这个,你试成功了,给我个回复。
5 楼 chroya 2010-09-08  
hsx9566 写道
楼主你那个项目试下
public class test extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main); 
        Intent i=new Intent();
        i.setClassName("aa", "bb");
if(i.resolveActivity(getPackageManager()) == null) {  
System.out.println("not exist");
}
if(i.resolveActivity(getPackageManager()) != null) {  
System.out.println("exist");
}
    }
}

这样的结果会打印出exist。
我正需要判断这个,你试成功了,给我个回复。

不好意思,是我的失误,已经纠正了。感谢hsx9566!
6 楼 hsx9566 2010-09-08  
这样可以了,谢谢。
7 楼 ksk0418lsl 2011-07-29  
经测试可以,但是要注意packageName 可以同伙 getPackageName()得到,指的是apk的包路径,className 用类的全路径也就是 xx.xx.xx.类名。

    
[3] listView改变一上显示文字
    来源: 互联网  发布时间: 2014-02-18
listView改变一下显示文字

ListView list = (ListView) findViewById(R.id.list);
adapter = new MyAdapter(this,R.layout.main,
    R.id.row_text,
    new String[]{"Uno", "Dos", "Tres"} );
list.setAdapter(adapter);

//Custom Adapter class

private class MyAdapter extends ArrayAdapter<String>{

  String[] mStrings;
  LayoutInflater mInflater;
  
  public MyAdapter(Context context, int resource, int textViewResourceId,
    String[] strings) {
   super(context, resource, textViewResourceId, strings);
   mStrings = strings;
   mInflater = (LayoutInflater) FirstAct.this.getSystemService(Context.LAYOUT_INFLATER_SERVICE);

  }

  @Override
  public View getView(int position, View convertView, ViewGroup parent) {

   View view = mInflater.inflate(R.layout.main,null, false);

   TextView text = (TextView) view.findViewById(R.id.row_text);
   text.setText(mStrings[position]);

   Spannable str = (Spannable) text.getText();
   str.setSpan(new StyleSpan(Typeface.BOLD), 0, str.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
   
   return view;
  }

 }


    
最新技术文章:
▪Android开发之登录验证实例教程
▪Android开发之注册登录方法示例
▪Android获取手机SIM卡运营商信息的方法
▪Android实现将已发送的短信写入短信数据库的...
▪Android发送短信功能代码
▪Android根据电话号码获得联系人头像实例代码
▪Android中GPS定位的用法实例
▪Android实现退出时关闭所有Activity的方法
▪Android实现文件的分割和组装
▪Android录音应用实例教程
▪Android双击返回键退出程序的实现方法
▪Android实现侦听电池状态显示、电量及充电动...
▪Android获取当前已连接的wifi信号强度的方法
▪Android实现动态显示或隐藏密码输入框的内容
▪根据USER-AGENT判断手机类型并跳转到相应的app...
▪Android Touch事件分发过程详解
▪Android中实现为TextView添加多个可点击的文本
数据库其它 iis7站长之家
▪Android显式启动与隐式启动Activity的区别介绍
▪Android按钮单击事件的四种常用写法总结
▪Android消息处理机制Looper和Handler详解
▪Android实现Back功能代码片段总结
▪Android实用的代码片段 常用代码总结
▪Android实现弹出键盘的方法
▪Android中通过view方式获取当前Activity的屏幕截...
▪Android提高之自定义Menu(TabMenu)实现方法
▪Android提高之多方向抽屉实现方法
▪Android提高之MediaPlayer播放网络音频的实现方法...
▪Android提高之MediaPlayer播放网络视频的实现方法...
▪Android提高之手游转电视游戏的模拟操控
 


站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2021,,E-mail:www_#163.com(请将#改为@)

浙ICP备11055608号-3