编译失败3tabBar
㈠ 如何利用weui作为前端来开发
先引用样式文件. 请在github上下载对应的文件.
下载地址为: 3次未审核, 搜索吧.
下载之后的目录结构为:
dist : 编译之后的目录, 里面的文件可以直接使用
src : 源码目录
可以打开dist下example目录, 这个是官方的例子文件. 里面比较全的基本使用方法.
打开example目录下的index.html 就可以看到官方的例子了.
这里需要说明一下, 这个官方使用的zepto.js框架. 这个框架更加适用移动端.
开始使用, 如果使用呢? 第一步先把css文件引用到页面中.
<link rel="stylesheet" type="text/css" href="路径地址" />
然后, 就可以使用官方的样式了. 首先来说明一下button.
使用方法:class="weui_btn weui_btn_primary"
其中属性有:
weui_btn weui_btn_primary
weui_btn weui_btn_warn
weui_btn weui_btn_default
三种, 如果你想扩展, 直接增加响应的样式就可以了.
Tab使用:
tab包含两种: navbar 和 tabbar
使用方法.
navbar :
<div class="weui_tab">
<div class="weui_navbar">
<div class="weui_navbar_item weui_bar_item_on"> 选项一</div>
<div class="weui_navbar_item"> 选项二 </div>
<div class="weui_navbar_item">选项三 </div>
</div>
<div class="weui_tab_bd"></div>
</div>
weui_bar_item_on 为选中项
tabbar:
<div class="weui_tabbar">
<a href="javascript:;" class="weui_tabbar_item weui_bar_item_on">
<div class="weui_tabbar_icon">
<img src="./images/icon_nav_button.png" alt="">
</div>
<p class="weui_tabbar_label">微信</p>
</a>
<a href="javascript:;" class="weui_tabbar_item">
<div class="weui_tabbar_icon">
<img src="./images/icon_nav_msg.png" alt="">
</div>
<p class="weui_tabbar_label">通讯录</p>
</a>
<a href="javascript:;" class="weui_tabbar_item">
<div class="weui_tabbar_icon">
<img src="./images/icon_nav_article.png" alt="">
</div>
<p class="weui_tabbar_label">发现</p>
</a>
<a href="javascript:;" class="weui_tabbar_item">
<div class="weui_tabbar_icon">
<img src="./images/icon_nav_cell.png" alt="">
</div>
<p class="weui_tabbar_label">我</p>
</a>
</div>
图片来自官方例子中的素材.
Toast
弹出层: 一个是弹出提示数据.
<div id="toast">
<div class="weui_mask_transparent"></div>
<div class="weui_toast">
<i class="weui_icon_toast"></i>
<p class="weui_toast_content">已完成</p>
</div>
</div>
使用$('#toast').show();进行显示数据.
searchBar搜索框
简单的搜索, 搜索世界的大不同, 不是所有的网站都可以
图标的使用.
<i class="weui_icon_msg weui_icon_success"></i>
<i class="weui_icon_msg weui_icon_info"></i>
<i class="weui_icon_msg weui_icon_warn"></i>
<i class="weui_icon_msg weui_icon_waiting"></i>
<i class="weui_icon_safe weui_icon_safe_success"></i>
<i class="weui_icon_safe weui_icon_safe_warn"></i>
Panel的使用
<div class="weui_panel weui_panel_access">
<div class="weui_panel_hd">图文组合列表</div>
<div class="weui_panel_bd">
<a href="javascript:void(0);" class="weui_media_box weui_media_appmsg">
<div class="weui_media_hd">
<img class="weui_media_appmsg_thumb" src="" alt="">
</div>
<div class="weui_media_bd">
<h4 class="weui_media_title">标题一</h4>
<p class="weui_media_desc">由各种物质组成的巨型球状天体,叫做星球。星球有一定的形状,有自己的运行轨道。</p>
</div>
</a>
<a href="javascript:void(0);" class="weui_media_box weui_media_appmsg">
<div class="weui_media_hd">
<img class="weui_media_appmsg_thumb" src="" alt="">
</div>
<div class="weui_media_bd">
<h4 class="weui_media_title">标题二</h4>
<p class="weui_media_desc">由各种物质组成的巨型球状天体,叫做星球。星球有一定的形状,有自己的运行轨道。</p>
</div>
</a>
</div>
<a class="weui_panel_ft" href="javascript:void(0);">查看更多</a>
</div>
图片里面没有填写地址, 请您自己填写信息.
㈡ 如何创建一个Tab bar Application
我们假如创建一个有三个选项的工程,并且三个相关的viewcontroller分别是普通的,table View,带table view的导航模式的,并且命名为FViewController, SViewController,TViewController。
选择新建一个Tab bar Application,并把工程名称命名为tTabApp。
建好后的工程目录如下:
在FViewController.m中修改一个函数
- (id)initWithNibName:(NSString*)nibNameOrNil bundle:(NSBundle*)nibBundleOrNil
{
self= [superinitWithNibName:nibNameOrNilbundle:nibBundleOrNil];
if(self) {
// Custom initialization
//self.title = @"第一个";
self.tabBarItem.title=@"第一个";
self.tabBarItem.image= [UIImageimageNamed:@"first"];
}
returnself;
}
修改SViewController中几个函数如下:
- (id)initWithNibName:(NSString*)nibNameOrNil bundle:(NSBundle*)nibBundleOrNil
{
self= [superinitWithNibName:nibNameOrNilbundle:nibBundleOrNil];
if(self) {
// Custom initialization
self.tabBarItem.title=@"第二个";
self.tabBarItem.image= [UIImageimageNamed:@"second"];
}
returnself;
}
#pragma mark - Table view data source
- (NSInteger)numberOfSectionsInTableView:(UITableView*)tableView
{
#warning Potentially incomplete method implementation.
删除上面的一样,这行永远会在编译期间生成一个警告
// Return the number of sections.
return1;
上面一行0改为1
}
- (NSInteger)tableView:(UITableView*)tableView numberOfRowsInSection:(NSInteger)section
{
#warning Incomplete method implementation.
// Return the number of rows in the section.
return1;
}
- (UITableViewCell*)tableView:(UITableView*)tableView cellForRowAtIndexPath:(NSIndexPath*)indexPath
{
staticNSString*CellIdentifier =@"Cell";
UITableViewCell*cell = [:CellIdentifier];
if(cell ==nil) {
cell = [[[UITableViewCellalloc]initWithStyle::CellIdentifier]autorelease];
}
cell.textLabel.text=@"1111";
上面这行是加入的,
// Configure the cell...
returncell;
}
在TViewController中做同样的更改,并且注意cell.textLabel.text=@"1111";改为cell.textLabel.text=@"222222";。以示区分。
- (id)initWithNibName:(NSString*)nibNameOrNil bundle:(NSBundle*)nibBundleOrNil
{
self= [superinitWithNibName:nibNameOrNilbundle:nibBundleOrNil];
if(self) {
// Custom initialization
self.title=@"第三个";
self.tabBarItem.image= [UIImageimageNamed:@"second"];
}
returnself;
}
在tcAppDelegate.m文件中加入import如下:
#import"FViewController.h"
#import"SViewController.h"
#import"TViewController.h"
在tcAppDelegate.m文件中修改函数
- (BOOL)application:(UIApplication*)application didFinishLaunchingWithOptions:(NSDictionary*)launchOptions
如下:
- (BOOL)application:(UIApplication*)application didFinishLaunchingWithOptions:(NSDictionary*)launchOptions
{
self.window= [[[UIWindowalloc]initWithFrame:[[UIScreenmainScreen]bounds]]autorelease];
// Override point for customization after application launch.
UIViewController*viewController1 = [[FViewControlleralloc]initWithNibName:@"FViewController"bundle:nil];
UIViewController*viewController2 = [[SViewControlleralloc]initWithNibName:@"SViewController"bundle:nil];
UIViewController*viewController3 = [[TViewControlleralloc]initWithNibName:@"TViewController"bundle:nil];
UINavigationController*navigationController = [[UINavigationControlleralloc]initWithRootViewController:viewController3];
self.tabBarController= [[[UITabBarControlleralloc]init]autorelease];
self.tabBarController.viewControllers= [NSArrayarrayWithObjects:viewController1, viewController2, navigationController,nil];
[viewController1release];
[viewController2release];
[viewController3release];
[navigationControllerrelease];
self.window.rootViewController=self.tabBarController;
[self.windowmakeKeyAndVisible];
returnYES;
}
㈢ splitview怎么设置
SplitView的设置可以通过以下步骤进行(以IB为主编程为辅的方法):
使用xCode的SplitView模版:
- 步骤:打开xCode,选择创建一个新项目,并从模版中选择“Split View Controller”模版。这将为你生成一个包含SplitView的基础项目结构。
- 目的:此步骤确保你的项目有一个预设的SplitView布局,便于后续开发和定制。
编译并保存项目:
- 步骤:在创建好SplitView模版项目后,进行编译以确保项目没有基础错误。编译成功后,保存项目。
- 目的:编译是检查代码和配置是否有误的重要步骤,保存项目则确保你的工作不会丢失。
(可选)结合TabBar模版:
- 步骤:虽然这一步不是设置SplitView的必需步骤,但如果你想在SplitView项目中加入TabBar功能,可以另行创建一个TabBar模版项目,并参考其配置来修改你的SplitView项目。
- 注意:这一步更多是为了扩展功能,而非SplitView设置的直接步骤。
重点说明:- 在使用IB(Interface Builder)进行界面设计时,你可以通过拖拽组件和调整属性来定制SplitView的外观和行为。- 编程部分通常涉及对SplitView的代理方法和数据源方法进行实现,以满足特定的功能需求。但在以IB为主的方法中,这部分编程工作相对较少,更多是通过IB的界面设计来完成。
通过以上步骤,你可以设置并初步定制一个SplitView界面。如果需要进一步的功能开发或界面调整,可以深入学习xCode和Cocoa框架的相关文档。