开发

iOS开发8:使用Tool Bar切换视图

≡放荡痞女 提交于 2019-12-07 16:18:43
之前讨论的都是单视图应用程序,而在实际应用中,我们可能要多个视图,并根据用户的需要切换视图。 iOS中几种典型的多视图程序: (1)Tab Bar Application:程序的底部有一排按钮,轻触其中一个按钮,相应的视图被激活并显示出来; (2)Navigation-Based Application:其特点是使用navigation controller,而navigation controller使用navigation bar来控制多级视图; (3)Tool Bar Application:程序的底部有一个工具条,利用工具条中的按钮来切换视图,经常与Tab Bar Application混淆。 这次要做的例子就是使用了Tool Bar,只是简单了实现了视图切换功能,并添加一些视图切换时的效果。在做例子之前,首先要了解一下视图的切换原理。 一般来说,一个多视图的程序要至少三个View Controller,其中一个作为Root Controller。所谓Root Controller,是指用户看到的第一个Controller,并且在程序加载时这个Controller就加载了。 Root Controller通常是UINavigationController或者UITabBarController的子类,也可以是UIViewController的一个子类。 在多视图程序中

iOS开发19:Storyboard的简单使用

浪子不回头ぞ 提交于 2019-12-07 11:11:56
之前做的例子,我们经常会用到.xib文件,在其中我们可以进行界面的设计。不过如果想切换视图,我们就得自己写很多代码。自从苹果推出了Storyboard,我们可以在一个编辑区域设计多个视图,并通过可视化的方法进行各个视图之间的切换。如下图: 上图中有两种箭头:左边的箭头表示程序刚开始运行时加载的控制器;右边的称为Segue,这个表示视图之间的切换,或者表示连接Navigation Controller的Root View Controller。 Storyboard功能强大,通过它不仅可以单独设计每一个视图,还能很简单地实现各个视图之间的切换。 接下来的例子主要显示Storyboard的功能,顺便用Storyboard实现了静态表格等功能。为了显示Storyboard的功能,我们从Empty Application开始我们的例子。 1、运行Xcode 4.2,新建一个Empty Application,名称为Storyboard Test: 2、打开AppDelegate.m,找到didFinishLaunchingWithOptions方法,删除其中代码,使得只有return YES;语句。 3、创建一个Storyboard: 在菜单栏依次选择File — New — New File,在弹出的窗口,左边选择iOS组中的User Interface,右边选择Storyboard:

Transform组件C#游戏开发快速入门

蹲街弑〆低调 提交于 2019-12-07 10:24:33
Transform组件C#游戏开发快速入门大学霸 组件( Component )可以看作是一类属性的总称。而属性是指游戏对象上一切可设置、调节的选项,如图 2-8 所示。本文选自 C#游戏开发快速入门大学霸 图 2-8 组件与属性 所有的游戏对象都有 Transform 组件,而 Transform 组件下的各属性,决定了游戏对象的位置、朝向和大小的状态。要修改游戏对象上 Transform 组件下的各属性,必须要指定修改的游戏对象是哪一个,指定的方式有两种: q 直接使用鼠标点选 Scene 视图中要改变状态的游戏对象; q 直接使用鼠标点选 Hierarchy 视图中要改变状态的游戏对象的名称; 然后 Inspector 视图就会将选中的游戏对象的所有可设置的属性显示在其中,如图 2-9 所示。 本文选自 C#游戏开发快速入门大学霸 图 2-9 查看并设置 Directional light 对象 Transform 组件属性的方法 读者可以直接在 Inspector 视图里设置游戏对象的状态,对于 Transform 组件下的各属性, Position 决定位置, Rotation 决定朝向, Scale 决定大小。对属性的修改会实时的反应在 Scene 、 Game 视图中。 本文选自 C#游戏开发快速入门大学霸 来源: oschina 链接: https://my

如何利用FineReport制作动态树报表

随声附和 提交于 2019-12-07 07:47:29
在对数据字段进行分类管理时,利用动态树折叠数据是一个很好的方法,也就是点击数据前面的加号才展开对应下面的数据,如下图。那这样的效果在制作报表时该如何实现呢? 下面以报表工具FineReport为例介绍。 思路: 通过将模版设置为组织树报表,然后通过设置树节点按钮,最好通过数据分析预览或者form表单预览即可查看效果。 步骤: 1、 初步建立模板 建立模板就相当于建立一个excel的sheet,只不过是cpt的形式。把相应的字段拖到单元格内。 2、 增加树节点按钮 通过设置树节点按钮来实现折叠树,分别右击单元格A1、A2、A3,选择空间设置>按钮,按钮类型选择“树节点按钮”,设置如下: 1、 保存与预览 保存模板,点击设计器中的数据分析,在网页上的预览效果即如上述所示。 动态效果展示: 用户设置了折叠树按钮后,预览报表时没有动态树效果,可能是预览模式错误。 我们是通过按钮控件实现该功能的,而普通的分页预览是不会将控件显示出来,如下图所示: 因此需要在op=view状态即数据分析下才能预览显示出效果。 折叠树延伸 需要在双向折叠树中显示对应的图表,以便查看,如下图所示: 具体步骤如下所示: 1、建立双向折叠树: 首先建立一个双向折叠树,双向折叠树需要注意折叠树数据列不可位于同一行或者同意列 2、设定节点点击事件 为了实现双向折叠树与图标的交互,需要设置树节点的点击事件

总结下开发C#客户端应用程序需要注意的一些问题

风格不统一 提交于 2019-12-07 03:11:57
本文是我前几天给公司里面同事培训C#时的一个讲义,今天抽时间进行了下润色,主要介绍了下我这几年开发C#应用程序积累的一些经验。虽然本文围绕着C#语言展开,但大部分场景同样也适用于VB.NET的开发。 一、开发环境 1、开发人员的开发环境以框架要求为准。如统一使用VS2010开发环境与.NET Framework 4.0等。 如果安装了更高版本的VS开发工具,需要在提交sln文件到SVN前修改标题,否则其他开发者更新下来sln后,可能会出现无法用低版本IDE打开的问题。 如用VS2012创建的工程,需要修改sln文件,将Format Version由12.00改为11.00,Visual Studio 2012改为2010。 在程序集属性中可以指定编译目标平台,如下面指定了目标平台为.NET Framework 4.0 2、如果在程序中需要用到指针,需勾选“允许不安全代码”。一般不要勾选“优化代码”,这可能导致编译器在对多线程程序做出错误的优化操作。 3、生成事件命令行可以在程序生成前或生成后执行Windows命令,一般用于将本地的配置文件等复制到生成后的目录中。 二、客户端架构 客户端的架构人员一般由项目组中一个专门的人来担任。这个人需要具备一定C#(或VB.NET)开发经验。 整体客户端的架构工作包括: 1、为各业务系统建立专门的程序集,简化各业务系统编码人员的编码。 2

lae界面开发工具入门之介绍十二--<iOS系统如何编译打包?>

倾然丶 夕夏残阳落幕 提交于 2019-12-06 22:36:27
lae sdk相关文件放在lae目录下, 已经下载过的同学,请更新一下。 laetool 下载地址: https://github.com/ouloba/laetool.git 1、建立新的工程. 2、起个产品名字. 3、把AppDelegate.m修改为AppDelegate.mm, 4、修改头文件如下 // // AppDelegate.h // LaeApp // // Created by 廖锡州 on 16/7/27. // Copyright 2016年 廖锡州. All rights reserved. // #import <UIKit/UIKit.h> @class EAGLView; @class ViewController; @interface AppDelegate : UIResponder <UIAccelerometerDelegate, UIAlertViewDelegate, UITextFieldDelegate,UIApplicationDelegate>{ UIWindow *window; EAGLView *eaglView; ViewController *viewController; } @property (strong, nonatomic) UIWindow *window; @end 5、修改源文件AppDelage

lae界面开发工具入门之介绍十--<如何打包资源文件?>

霸气de小男生 提交于 2019-12-06 22:36:03
1、首先把相关文件拷贝到package目录下。 2、然后,打开打包工具,把package目录里所有文件加到列表里。 3、最后,点击右键保存 -------------------下面介绍如何做成Windows程序--------------,---- 建立一个空目录bin,把lae目录中相关文件拷贝到该目录下,主要包括 1、所有dll 2、LXZWin32R.exe 3、字体文件MicrosoftYaHei.ttf 4、package中defualt.cfg和相应的LXZ文件,比如上面Game2048.LXZ文件 直接运行LXZWin32R.exe即可。 --修改defualt.cfg,显示系统标题栏 效果如下 来源: oschina 链接: https://my.oschina.net/u/1030910/blog/713718

lae界面开发工具入门之介绍十一--<安卓系统如何编译打包?>

别说谁变了你拦得住时间么 提交于 2019-12-06 22:35:43
laetool 下载地址: https://github.com/ouloba/laetool.git 运行lae.exe,点击工具栏上,有的人下载较早版本,但没有更新的习惯,为了保证一致,请保持最新版本! 1、Android studio建立一个android application。 (android studio非正常关闭时,可能没有【start a new android project】,解决办法参照 http://my.oschina.net/u/1030910/blog/730302 ) 操作过程: 点击【welcome to android studio】->【start a new android studio project】。 弹出如下【Create New Project】界面,在Application name右侧输入栏中输入应用项目名称,如【demo】,Project location输入栏中,选择项目存放目录 点击【next】按钮,切换到下面界面,在Phone and Tablet的Minimum SDK右侧,点击下拉按钮 , 选择API 19:Android 4.4(KitKat)。 点击【Next】按钮,切换到下面界面,选择【Blank Activity】 点击【Next】,切换到下面界面, 点击【Finish】,完成之后,弹出下图界面,点击

ejabberd moudle 开发

一笑奈何 提交于 2019-12-06 18:31:50
参考: http://anders.conbere.org/journal/ http://www.process-one.net/en/wiki/ejabberd_module_development/ ejabberd的内部的很多模块都是以插件的形式工作,这样我们也可以开发自己的模块融合到ejabberd中去,完成各种各样我们独特的需求。 ejabberd定义了一个gen_mod behaviour,其要求下面的callback: Erlang代码 start(Host, Opts) -> ok stop(Host) -> ok * Host = string() * Opts = [{Name, Value}] * Name = Value = string() 其中Host是运行这module的一个虚拟的主机。 Opts是在配置中指定的mod的参数(后面会讲到),可以通过gen_mod:get_module_opt/4获取(参看gen_mod.erl代码得知这些信息存储在ets中)。 我们要实现一个mod非常容易,就非常容易了: Erlang代码 -module(my_module). -author( 'your@mail.com' ). -behaviour(gen_mod). -include( 'ejabberd.hrl' ). %% gen_mod

Android应用程序基础(Application Fundamentals)之一

点点圈 提交于 2019-12-06 02:56:36
正在尝试分析SDK中的示例程序NotePad,发现仍然还欠缺很多知识。今天看到 API Guides 下有一部分应用程序基础 Application Fundamentals,感觉需要进一步学习。于是准备采用之前的策略,边翻译,边学习。虽然这样做,学起来很慢,但是,好在可以慢慢理解,转化为自己的语言的同时也是一种加深记忆的过程。反正,我也只是业余学习,不赶时间,呵呵。 整个API指南有很多个章节,下面先把章节的名字列一下,这样知道还有多长的路要走。 API Guides (developer.android.com/guide/components/index.html) [App Components] [User Interface] [App Resources] [Animation and Graphics] [Computation] [Media and Camera] [Location and Sensors] [Connectivity] [Text and Input] [Data Storage] [Administration] [Web Apps] [Best Practices] 其中第一章 应用程序组件(App Components)就有多个子章节。各章节的名字如下: App Components [App Fundamentals]