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

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

系統 2473 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條評論
主站蜘蛛池模板: 中文字幕 一区 婷婷 在线 | 久久这里精品青草免费 | 亚洲精品美女国产一区 | 中文字幕高清免费不卡视频 | 超清乱人伦中文视频在线 | 欧美一区视频 | 国产成人精品视频一区二区不卡 | 成人精品福利 | 美女被爆羞羞视频网站视频 | 色视频网 | 天天做夜夜做久久做狠狠 | 国产片久久 | 波多野结衣一区 | 久久午夜青青草原影院 | 亚洲啪啪免费视频 | 超乳w真性中出し冲田杏梨101 | 亚洲成人网在线 | 国产欧美久久久精品影院 | 天天色天天拍 | 一a级毛片 | 黄页免费观看1 | 精品久久久久久免费影院 | 亚洲国产成人久久一区www妖精 | 欧美日韩在大午夜爽爽影院 | 成人午夜大片免费7777 | 男人影院在线 | 日本一级爰免费视频 | 久久99久久99精品免观看 | 欧美久久网| 亚洲主播在线 | 日韩国产成人 | 中文字幕精品在线观看 | 国产精品成人观看视频免费 | 亚洲在线中文字幕 | 欧美一级夜夜爽 视频 | 另类亚洲视频 | 99久久99热久久精品免费看 | 日韩欧美亚洲综合一区二区 | 久久99热在线观看7 久久99热这里只有精品 | 国产麻豆精品aⅴ免费观看 国产麻豆精品hdvideoss | 青青青爽线在线视频观看 |