亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

iphone簡單實例 (字體,彈出窗口) (實例)

系統 2846 0

1. UIFont 可以支持的字體預覽

?

為iPhone上到底支持哪些字體而發愁嗎???為光看字體名稱而不知道其長得 是啥樣子而發愁嗎?以下demo可以幫到你.

?

帖子地址? http://www.cocoachina.com/bbs/read.php?tid-19894.html

?

下載見附件:FontTest.zip

?

?

IPhone 所支持的字體:
  "Courier"
  "AppleGothic"
  "Arial"
  "STHeiti TC"
  "Hiragino Kaku Gothic ProN"
  "Courier New"
  "Zapfino"
  "Arial Unicode MS"
  "STHeiti SC"
  "American Typewriter"
  "Helvetica"
  "Marker Felt"
  "Helvetica Neue"
  "DB LCD Temp"
  "Verdana"
  "Times New Roman"
  "Georgia"
  "STHeiti J"
  "Arial Rounded MT Bold"
  "Trebuchet MS"
  "STHeiti K"

或者 對于ios中都包含那些可用字體,可以通過調用[UIFont familyNames]方法,它返回的是一個NSArray,

          NSArray *familyNames = [UIFont familyNames];
    for( NSString *familyName in familyNames ){
        printf( "Family: %s \n", [familyName UTF8String] );
        NSArray *fontNames = [UIFont fontNamesForFamilyName:familyName];
        for( NSString *fontName in fontNames ){
            printf( "\tFont: %s \n", [fontName UTF8String] );
        }
    } 
    
?
正式用法:

        UIFont *tFont = [UIFont fontWithName:[[UIFont fontNamesForFamilyName:@"Helvetica"] objectAtIndex:N] size:17];
  [textLabel setFont:tFont];
    

  每一種FamilyName都是個Array類型的變量,N一般取0基本沒有錯誤,如果N取其他數,且Array里沒有那么多,則報錯可自己嘗試,IPhone字體對國字支持的不夠好,基本沒有太大變化,一般對英文是嘎嘎好使。

?

?

?

?

2. iPhone 彈出框代碼例子

?

這個 iPhone 彈出框代碼例子由 CocoaChina 會員 “sunmingze198” 分享,效果類似 iOS 系統自帶的 WiFi 選擇彈出框。

?

下載見附件:popUpDemo.zip

?

?

UIAlertView 這個元件并不常用,如果將UIAlertView 用作顯示普通訊息,這不是一個好的介面設計,因為彈出來的訊息是非常引人注意的,就好像 Javascript 的 alert 一樣,彈出來后整個視窗也不能操作,一定要用戶按下 "OK" 才能繼續操作,我相信各位也不喜歡到經常彈出 alert box 的網站吧,在 iPhone也是同樣道理。

那何時才使用 UIAlertView? 應該是有某些訊息無論如何也要用戶去知道,不是那些無關緊要的事,有可能是你的應用程式發生一些問題,令操作不能繼續的訊息。例如你的應用程式必須依賴網路來拿取資料,但用戶的裝置根本沒有連接網路,這時候你便需要使用UIAlertView 去提示用戶去連接網路,不然應用程式不能運作。

首先是最簡單,只顯示訊息并只有一個 "OK" 按鈕的 Message Box:

?

?

    UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Title" message:@"Message 1......\nMessage 2......" delegate:nil cancelButtonTitle:@"OK" otherButtonTitles:nil];
     
[alert show];
[alert release];
  
?

樣子:

?


因為按下 "OK" 按鈕后不需要任何動作,所以也不用設置代理 (delegate)。
cancelButtonTitle 是 UIAlertView 預設的按鈕,是必須設備的,但按鈕顯示的文字則可以任意更改。
而 otherButtonTitles 則可以用來增加按鈕,每加入一個 NSString 就會多一個按鈕。好像以下這樣:

?

?

    UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Title" message:@"Message 1......\nMessage 2......" delegate:nil cancelButtonTitle:@"OK" otherButtonTitles:@"Button 1", @"Button 2", @"Button 3", nil];
  
?

這樣便會增加多三個按鈕,加上 Cancel Button 一共有 4 個按鈕。

樣子: ?

?

?


如果想按下按鈕后有其他動作,你需要在相對應的 Class 加上 UIAlertViewDelegate 的 protocol。

?

例如我想 UIViewController 當 UIAlertView 的代理:

?

ViewController.h

?

?

    #import <UIKit/UIKit.h>
 
@interface ViewController : UIViewController <UIAlertViewDelegate> {
 
}
 
@end
  
?

在? ViewController.m ?加上以下方法:

?

?

    - (void) alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex{
    //Code.....
}

  
?

而 UIAlertView 的 CancelButton 的 buttonIndex 是 0,其他按鈕的 buttonIndex 則順序增加。

可以這樣判斷用戶究竟按下了那一個按鈕:

?

?

    - (void)loadView {
 
    UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Title" message:@"Message 1......\nMessage 2......" delegate:self cancelButtonTitle:@"OK" otherButtonTitles:@"Button 1", @"Button 2", @"Button 3", nil];
     
    [alert show];
    [alert release];
     
}
 
- (void) alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex{
     
    switch (buttonIndex) {
        case 0:
            NSLog(@"Cancel Button Pressed");
            break;
        case 1:
            NSLog(@"Button 1 Pressed");
            break;
        case 2:
            NSLog(@"Button 2 Pressed");
            break;
        case 3:
            NSLog(@"Button 3 Pressed");
            break;
        default:
            break;
    }
     
}
  
?

?

?

?

?

?

?

?

?

?

?

?

?

iphone簡單實例 (字體,彈出窗口) (實例)


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 久久久穴 | 国产精品成人久久久久久久 | 国产在线精品一区二区高清不卡 | 大陆一级毛片免费视频观看i | 天堂va亚洲va欧美va国产 | 伊人狠狠丁香婷婷综合色 | 日本亚洲精品一区二区三区 | 日本一片免费观看高清完整 | 国产在线视频你懂得 | 日本大片久久久高清免费看 | 亚洲综合色在线 | 2021在线永久免费视频 | 亚洲欧美中文字幕专区 | 一级黄色α片 | 欧美视频在线视频 | 日韩午夜网站 | 四虎影视紧急入口地址大全 | 国产毛片久久精品 | 级毛片| 天天干天天拍天天射天天添天天爱 | 日韩在线一区二区 | 99色在线视频 | 国产麻豆精品在线 | 中文字幕国产在线 | 东北老妇露脸xxxxx | 亚洲免费视频网址 | 米奇精品一区二区三区在线观看 | 亚洲精品国产五月色 | 久久草在线视频播放 | 免费亚洲视频在线观看 | 日本不卡免费新一区二区三区 | 国产区精品福利在线观看精品 | 九九精品视频在线 | 久久99热久久精品在线6 | 精品九九在线 | 久操视频在线播放 | 婷婷在线成人免费观看搜索 | 一本色道久久综合一区 | 欧美亚洲综合一区 | 青青免费视频精品一区二区 | 亚洲日产 |