这是一个假命题
HorizontalScrollView 嵌套 listView时 会发现listView 根本动不了 那个无法解析出他的具体高度
在网上找资料发现 有人实现了但是都不好
其实HorizontalScrollView 嵌套 listView 根本就是个错误的模式
在现实中我们的需求其实基本都是 想 上面一个大小不定的view 下面一个listview 然后就想用HorizontalScrollView
去套下,其实 只需要用 listview 的 addHeaderView 就可以解决
把已知的放在header 中就可以
Listview.addHeaderView(View v)
1、Object-c提供基本数据类型:int、float 、double 、char
示例代码测字节数:
运行结果:
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
Student.m
Member.h
Member.m
主函数main.m里:
运行结果:
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
@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!
<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