- 浏览: 19368 次
- 性别:
- 来自: 长沙
最新评论
文章列表
这个控件比较蛋疼,思路还是MVC
我估计,由于ipad界面比较大,所以就设计Splitview这种控件来玩。其实就是两个ViewController组合在一起(这两个ViewController上面可以放入任何的控件),会玩tableview和和navigation之后,这个控件还是比较容易
下面简单介绍一下我写的splitview的结构
1.代理类。
类名:AppDelegate.h/AppDelegate.m
属性:
-UIWindow * window//这个东西初学者就不用深入研究,就知道一个Application只有一个Window就行了
-MySplitViewControlle ...
说说值得下功夫的iphone控件-2
- 博客分类:
- ios学习
tableviewController
或者是继承ViewController<tableview的两个协议>
类似android中的listView。最经典的MVC设计思路的控件之一
首先要完成TableView模型的两个方法
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
}//tableView模型的行数
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtI ...
说说值得下功夫的iphone开发的控件-1
- 博客分类:
- ios学习
1.NavigationController
我的理解
1:这个家伙不是一个view。所以,在他上面必须有个view遮住。
2:这个东西是一个view栈,他就是栈的首地址,通过这个东西可以找到一连串的view
3:这个东西,用push,将下一个视图压入,用pop方法释放掉最上面的一个view
最后,这个东西重在理解,应用方面比较简单,但是,很多地方都要用到
下面扔一个工程。该工程包含UITableVieController(也是iphone开发注意的控件之一)
ios加载通过字符串加载特定的类
- 博客分类:
- ios学习
ios加载指定的类
NSString* ViewControllerName=@"ClassName";
UIViewController* targetViewController=[[NSClassFromString(ViewControllerName) alloc]
initwithNibName:@"XibName" bundle:nil];
指定加载的xib文件
- 博客分类:
- ios学习
UIViewController * viewController=[[YourControllerClass alloc] initWithNibName:@"xibName" bundle:nil];
加载指定的class文件:YourControllerClass 所对应的xib文件:xibName。
搞了很久才发现有这么一个 :名堂
这一个月每日每夜的写代码,却总感觉没有人家那么那般行云流水的感觉。后来经过自己几次吐血的经历,总算找到一点点门道。
首先。明白你的目标。我们在刚开始写一个程序之前,不是在脑子里解决以后这个程序怎么 ...
当代,随着知识产生的强大的经济力量与活力四射的社会效益,学习已变得
越来越重要,同时越来越普及,舞蹈弄到,早已是过去式了。如果你不学习知识
,就会被落后。
学习固然很重要,但是,有着一个好的习惯,不仅仅能帮你在学习帮助你,而且
,还能影响着你的知识体系,与将来的人际交往等等。
以下,是我想通过代码演示,学习与习惯的关系,用来勉励我,同时也分享给奋
斗在技术中的朋友们
//主人公:你
Person u;
//你正在学习中
if(u.studyin()){
//假设你认同学习的作用是改变旧的习惯,创建新的习惯是正确的。
...
1:FlowLayout 流式布局
作用,依照先后顺序,一次从左到右排列,每行组件居中对齐
2:BorderLayout 方位布局
作用,可以指定该组件放在容器的哪个方位
3:CardLayout 卡片布局
作用,可以容纳一堆组件,但每一次只能显示一个组件
4:GridLayout 网格布局
作用:将容器分为若干区域,每个区域都可以添加组件
5:BoxLayout 盒式布局
作用:可以创建行(列)盒子,然后添加组件到盒子中,盒子布局一般都用要嵌入到另一个盒子中
6:null 无布局
作用。只能程序员自己用setBounds()方法自己添加组件到容器中
下面上传一些各种 ...
犯错误,是常有的事,但是,在犯错误之后如何寻找错误,纠正错误呢?
这些天的心得:
1.明确你所写的代码的意义
这里要求我们尽量去写各种注释,方便一目了然
提一点:注释尽量要给别人看的清楚,因为写的程序是给别人看的
2.知道程序在什么地方运行那一块函数(方法),或者是执行某一个命令时,调用程序的哪一部分
3.逆推程序,从最后能够执行的命令那一段开始,以此向上检查各个程序的部分,是否是多写了某一段造成多创建了对象..,或者是是少加入了队列等等
总结:
程序出问题,不是电脑有了问题,肯定是你的代码中某一个或者某一段出了差错
寻找错误的方法就像你在路上丢了钱一样,知道你走过什么路,转了几个弯, ...
1.xx类的数组(队列)才可以放入xx类的对象,xx类的数组(队列)不能存放yy类的对象
例如:
student[][] stu=new student[i][j];
//i,j你自己规定
student stu1=new student
stu[k][l]=stu1;
如果变成
stud stu2=new stud;
stu[k][l]=stu2
就会报错,类型不一致
2.空指针问题
//创建一个类
public class student{
int i,j;
//名字
private int Num;
//声明一个二维数组
private student[][] stu;
//重载构 ...
我对值传递与引用传递的理解
- 博客分类:
- java的基本学习
1.先浅谈java中存放的数值的方式:
第一种:将数值放到栈中
第二种:将数值放到堆中
这两种方式你可以再脑海中形成两个高楼大厦;
一座楼叫做栈,一座楼叫做堆
楼中的房子分别装着不同的数据
2.接着,讨论值传递
public clas ...
1.多边形图形
/*
* 多边形对象
*/
public class PolygonShape extends ShapeObject {
//保存多边形的点的队列
QueueList<Integer> Polygon=new QueueList<Integer>();
public QueueList<Integer> getPolygon(){
return Polygon;
}
/**
* 将数据放 ...
(forth):重绘与我的心得
重绘:
/**
* 画图板改变时的方法
*/
public void paint(Graphics gp){
//父类的重绘方法;
super.paint(gp);
ReShow();
}
这个就是点用重绘的方法,是Java中给定的,当窗体发生改变是,自动调用paint方法
里面的ReShow()方法是自己所写的提取数据,然后依据数据画图形的方法。
至此一个画图板的基本解说就到这里了。
小小的心得:
1:活用System.out.println()方法;错误是不能避免的,当出现错误的时候,可以用这句话检测那里没有实现 ...
(third):保存图形与提取图形
1.事先准备工作
思路1:画一条直线是不是需要知道首位两端的两个点就可以了?这个是最简单的思路,当然你也可以记住一个点,直线的长度,然后是倾角....或者其他什么的方法,不过相信应该都没有记住两个点简单,有其他想法的保存方式,请你先试试,然后咱们来一起讨论讨论
所以,可以创建一个LineShape的类,然后传入两个点,四个坐标值。
其他的矩形等都是类似,除了多边形,我打算放到下一个板块来说
思路2:在之前的监听器中,画一条直线,创建一个LineShape的对象,然后将这两个点保存进去,然后在打上标签(就是在ShapeObject中的数字),1为直线..... ...
(Second):画图板的创建与监听器的实现
1.画图板的建立方法,都是基本的
(这里我是直接拷贝我的源代码的一部分,有些语句有点点问题,比如说:JButton应该写成javax.swing.JButton。但在源代码中有了引用,所以我就直接省略了,你可以在我的文章《一个可以重绘的画图板》程序中看到源代码)
/**
*生成 画板的方法
*/
public void CreatBox(){
//设置名称
this.setTitle("画图板");
//设置大小
this.setSize(700,500);
/ ...