当前位置:  编程技术>移动开发
本页文章导读:
    ▪HorizontalScrollView 嵌套 listView 的有关问题        HorizontalScrollView 嵌套 listView 的问题 这是一个假命题 HorizontalScrollView 嵌套 listView时 会发现listView 根本动不了 那个无法解析出他的具体高度 在网上找资料发现 有人实现了但是都不好   其实.........
    ▪ objective-c根本数据类型        objective-c基本数据类型 1、Object-c提供基本数据类型:int、float 、double 、char     示例代码测字节数:   [cpp] view plaincopy //数据类型:           //整形(int、short int、long int、unsi.........
    ▪ onclick="return checkForm()" 什么情况下添 "return&quot       onclick="return checkForm()" 什么情况下加 "return" <html>   <head>      <script language="javascript">     function checkForm(){              var username = document.getElementById("username").value;   .........

[1]HorizontalScrollView 嵌套 listView 的有关问题
    来源: 互联网  发布时间: 2014-02-18
HorizontalScrollView 嵌套 listView 的问题


这是一个假命题

HorizontalScrollView 嵌套 listView时 会发现listView 根本动不了 那个无法解析出他的具体高度

在网上找资料发现 有人实现了但是都不好

 

其实HorizontalScrollView 嵌套 listView 根本就是个错误的模式

 

在现实中我们的需求其实基本都是     想  上面一个大小不定的view 下面一个listview 然后就想用HorizontalScrollView

去套下,其实 只需要用 listview 的 addHeaderView 就可以解决

 

把已知的放在header 中就可以

 

Listview.addHeaderView(View v)

 

 

 

 


    
[2] objective-c根本数据类型
    来源: 互联网  发布时间: 2014-02-18
objective-c基本数据类型

1、Object-c提供基本数据类型:int、float 、double 、char    


示例代码测字节数:

 

[cpp] view plaincopy
  • //数据类型:  
  •         //整形(int、short int、long int、unsigned int、unsigned short、unsigned long)  
  •         NSLog(@"整形:");  
  •         NSLog(@"%lu",sizeof(int));//整形4个字节  
  •         NSLog(@"%lu",sizeof(short int));//短整形2  
  •         NSLog(@"%lu",sizeof(long int));//长整形8  
  •         NSLog(@"%lu",sizeof(unsigned int));//无符号整形4  
  •         NSLog(@"%lu",sizeof(unsigned short));//无符号短整形2  
  •         NSLog(@"%lu",sizeof(unsigned long));//无符号长整形8  
  •         //实形(float 、double 、long double)  
  •         NSLog(@"实形:");  
  •         NSLog(@"%lu",sizeof(float));//浮点形4  
  •         NSLog(@"%lu",sizeof(double));//双精度形8  
  •         NSLog(@"%lu",sizeof(long double));//长精度形16  
  •         //字符型和字符串形   
  •         char a='a';  
  •         char b=100;  
  •         NSLog(@"%c,%c",a,b);  
  •         NSLog(@"%i,%i",a,b);  
  •         NSLog(@"我是字符串");//字符串形:@“我是字符串”  

  • 运行结果:

     

     

    2012-03-27 10:36:41.618 HelloWorld[724:707]整形:

    2012-03-27 10:36:41.624 HelloWorld[724:707] 4

    2012-03-27 10:36:41.625 HelloWorld[724:707] 2

    2012-03-27 10:36:41.626 HelloWorld[724:707] 8

    2012-03-27 10:36:41.627 HelloWorld[724:707] 4

    2012-03-27 10:36:41.628 HelloWorld[724:707] 2

    2012-03-27 10:36:41.628 HelloWorld[724:707] 8

    2012-03-27 10:36:41.629 HelloWorld[724:707]实形:

    2012-03-27 10:36:41.630 HelloWorld[724:707] 4

    2012-03-27 10:36:41.630 HelloWorld[724:707] 8

    2012-03-27 10:36:41.631 HelloWorld[724:707] 16

    2012-03-27 10:36:41.632 HelloWorld[724:707] a,d

    2012-03-27 10:36:41.633 HelloWorld[724:707] 97,100

    2012-03-27 10:36:41.633 HelloWorld[724:707]我是字符串

    输出格式符:

    int:%i,%d,%o,%x

    float:%f,%e,%g

    double:%f,%e,%g  //%g自动根据数的长度选取%f还是%e

    char:%c

    限定符:

    (long)

    long int:%li

    long double:%lf

    (long long)

    long long int:%lli

    (short)

    short int:%hi

     

    2、其它类型:

    (一)id类型

    id类型是一个独特的数据类型,在概念上,类似java的Object类,可以转换为任何数据类型。换句话说,id类型变量可以存放任何数据类型的对象。在内部处理上,这种类型被定义为指向对象的指针,实际上是一个指向这种对象的实例变量的指针。需要注意的是id是一个指针,所以在使用id的时候不需要加星号;

    比如说:id foo=nil;

     

    该语句定义了一个nil指针,这个指针指向NSObject的任意一个子类。而“id *foo=nil"则定义了一个指针,这个指针指向另一个指针,被指向这个指针指向NSObject的一个子类;

    下面是一个示例:两个不同的类(一个是学生类Student,一个是会员类Member),这两个类拥有不同的成员变量和方法。

    Student.h

    [cpp] view plaincopy
  • #import <Foundation/Foundation.h>  
  •   
  • @interface Student : NSObject{  
  •     int sid;  
  •     NSString *name;  
  • }  
  • @property int sid;  
  • @property (nonatomic,retain)NSString *name;  
  • -(void)print;  
  • -(void)setSid:(int)sid andName:(NSString*)name;  
  •   
  • @end  
  •  

    Student.m

    [cpp] view plaincopy
  • #import "Student.h"  
  •   
  • @implementation Student  
  • @synthesize sid,name;  
  • -(void)print{  
  •     NSLog(@"我的学号是:%i,我的名字是:%@",sid,name);  
  • }  
  • -(void)setSid:(int) sid1 andName:(NSString *)name1{  
  •     self.sid=sid1;  
  •     self.name=name1;  
  • }  
  • @end  
  • Member.h

    [cpp] view plaincopy
  • #import <Foundation/Foundation.h>  
  •   
  • @interface Member : NSObject{  
  •     NSString *name;  
  •     int age;  
  • }  
  • @property (nonatomic,retain)NSString *name;  
  • @property int age;  
  • -(void)print;  
  • -(void)setName:(NSString*)name1 andAge:(int)age1;  
  •   
  • @end  
  • Member.m

    [cpp] view plaincopy
  • #import "Member.h"  
  •   
  • @implementation Member  
  • @synthesize name,age;  
  • -(void)print{  
  •     NSLog(@"我的名字是:%@,我的年龄是%i",name,age);   
  • }  
  • -(void)setName:(NSString *)name1 andAge:(int)age1{  
  •     self.name=name1;  
  •     self.age=age1;  
  • }  
  • @end  

  • 主函数main.m里:

     

    [cpp] view plaincopy
  • id fo;  
  •         NSLog(@"%lu",sizeof(fo));  
  •         Member *member1=[[Member alloc]init];  
  •         [member1 setName:@"Sam" andAge:36];  
  •         id data;  
  •         data=member1;//由于id类型的通用性质,我们可以将创建好的对象赋值给data;  
  •         [data print];  
  •           
  •         Student *student1=[[Student alloc]init];  
  •         [student1 setSid:1122334455 andName:@"Lee"];  
  •         data=student1;  
  •         [data print];  

  • 运行结果:

     

     

    2012-03-27 14:41:01.768 HelloWorld[440:707] 8

    2012-03-27 14:41:01.769 HelloWorld[440:707] 我的名字是:Sam,我的年龄是36

    2012-03-27 14:41:01.769 HelloWorld[440:707] 我的学号是:1122334455,我的名字是:Lee

    注:id 类型可以通过类型转化符可以将一般的id 类型的对象转换成特定的对象。

    看上面程序中有@property和@synthesize修饰;

    @property和@synthesize,在接口文件中使用@property来标识属性(一般是实例变量),在实现文件中使用@synthesize标识所声明的属性,让系统自动生成设置方法和获取方法.

    格式:@property (属性列表)实例变量,


    (二)枚举数据类型、typedef 语法以及数据类型的转换和C 是一样。    

    (三)BOOL布尔值:

    布尔值为YES/NO,或1/0.假是0;这个没什么好说的

    (四)sel选择器

    选择器就是指向方法的一个指针,可以简单理解为程序运行到这里就会执行指定的方法;

    (五)nil和Nil

    nil和C语言的NULL相同。nil表示一个Objctive-C对象,这个对象的指针指向空(没有东西就是空)。

    而Nil首字母大写的Nil和nil有一点不一样,Nil定义一个指向空的类(是Class,而不是对象)。

    (六)IMP

    IMP是一个指向函数的指针,这个被指向的函数包括id(“self”指针),调用的SEL(方法名),再加上一些其他参数。

    说白了IMP就是实现方法。

     (六)class

    与java类似,你可以使用class类来获得一个对象所属的类

    (七)Method

    Method(我们常说的方法)表示一种类型,这种类型与selector和实现(implementation)相关。

    ok!

     


        
    [3] onclick="return checkForm()" 什么情况下添 "return&quot
        来源: 互联网  发布时间: 2014-02-18
    onclick="return checkForm()" 什么情况下加 "return"

    <html>
      <head>
         <script language="javascript">
        function checkForm(){
        
            var username = document.getElementById("username").value;
            var password = document.getElementById("password").value;
            var dpassword = document.getElementById("dpassword").value;
           
            if(username.length<6 || username.length>12){
                 alert("提示:\n\n用户名称必须大于6位,小于12位!");
                 document.getElementById("username").value = "";
                 document.getElementById("username").focus();
                 return false;
            }
           
            if(password.length<6 || password.length>12){
                 alert("提示:\n\n密码必须大于6位,小于12位!");
                 document.getElementById("password").value = "";
                 document.getElementById("password").focus();
                 return false;
            }
            if(dpassword.length<6 || dpassword.length>12){
                 alert("提示:\n\n密码必须大于6位,小于12位!");
                 document.getElementById("dpassword").value = "";
                 document.getElementById("dpassword").focus();
                 return false;
            }
            if(password != dpassword){
                  alert("提示:\n\n两次输入的密码不同!");
                  return false;
            }
        }
     </script>
      </head>
     
      <body>
     <form action="/blog_article/RegisterServlet/index.html" method="post">
         <div >
          <label>
           用户名:
          </label>
              <input type="text" name="username"/>
         </div>
         <div >
          <label>
           密  码:
          </label>
                <input type="password" name="password" />
         </div>
         <div >
          <label>
           重复密码:
          </label>
          <input type="password" name="dpassword"/>
         </div>
         <div >
          <input type="submit" value="注册" onclick="return checkForm()"/>
          <input type="reset" value="清空"/>
         </div>
        </form>
       
      </body>
    </html>
    为什么onclick中要加上return才能判断成功 才不会继续运行下去。
    当直接写onclick="checkForm()" 注册时有错误提示,还是会继续提交给服务器。



    解答如下,

    JAVASCRIPT在事件中调用函数时用return返回值实际上是对window.event.returnvalue进行设置。

    而该值决定了当前操作是否继续。
    当返回的是true时,将继续操作。
    当返回是false时,将中断操作。

    而直接执行时(不用return)。将不会对window.event.returnvalue进行设置
    所以会默认地继续执行操作

    详细说明如下:
    例如:
    当在 <a href="/blog_article/abc.htm" onclick="return add_onclick()">Open</a> 中
    如果函数 add_onclick() 返回 true, 那么 页面就会打开 abc.htm
    否则, (返回 false), 那么页面不会跳转到 abc.htm, 只会执行你的 add_onclick() 函数里的内容. (add_onclick函数中控制页面转到 abc.htm除外

    )
    而 <a href="/blog_article/abc.htm" onclick="add_onclick()">Open</a>
    不管 add_onclick() 返回什么值, 都会在执行完 add_onclick 后打开页面 abc.htm


        
    最新技术文章:
    ▪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添加多个可点击的文本
    ▪Android程序设计之AIDL实例详解
    ▪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