nsstring *string = @"bla";
cgsize s = [string sizewithfont:[uifont systemfontofsize:20]
constrainedtosize:cgsizemake(self.view.bounds.size.width - 40, cgfloat_max) // - 40 for cell padding
的標籤上,例如,將
而不是
label.linebreakmode = uilinebreakmodewordwrap;
2. 為了保持你可以建立乙個巨集,如下:
#ifdef __iphone_6_0
#else
# define line_break_word_wrap uilinebreakmodewordwrap
#endif
typedef enum uilinebreakmode;
uilinebreakmodewordwrap = 0,
以單詞為單位換行,以單位為單位截斷。
uilinebreakmodecharacterwrap,
以字元為單位換行,以字元為單位截斷。
uilinebreakmodeclip,
以單詞為單位換行。以字元為單位截斷。
uilinebreakmodeheadtruncation,
以單詞為單位換行。如果是單行,則開始部分有省略號。如果是多行,則中間有省略號,省略號後面有4個字元。
uilinebreakmodetailtruncation,
以單詞為單位換行。無論是單行還是多行,都是末尾有省略號。
uilinebreakmodemiddletruncation,
以單詞為單位換行。無論是單行還是多行,都是中間有省略號,省略號後面只有2個字元。
//以空格為邊界,保留單詞
//保留整個字元
nslinebreakbyclipping,
//簡單剪裁,到邊界為止
nslinebreakbytruncatinghead,
//按照"……文字"顯示
nslinebreakbytruncatingtail,
//按照"文字……文字"顯示
nslinebreakbytruncatingmiddle
//按照"文字……"顯示
例如:uilabel *label = [[uilabel alloc] initwithframe:cgrectmake(0,0,0,0)];//後面還會重新設定其size。
[label setnumberoflines:0];
nsstring *s = @"string......";
uifont *font = [uifont fontwithname:@"arial" size:12];
cgsize size = cgsizemake(320,2000);
cgsize labelsize = [s sizewithfont:font constrainedtosize:sizelinebreakmode:uilinebreakmodewordwrap];
[label setframe:cgrectmake(0, 0, labelsize.width, labelsize.height)];
[self.view addsubview:label];
iOS UILabel的使用方法
uilabel常用屬性 uilabel的建立 uilabel label uilabel alloc init 設定label的位置和大小 label.frame cgrectmake 50,50,100,30 設定文字 label.text hello world 設定背景色 label.back...
Android gridview 使用的一些小問題
1.gridview 水平滑動,網上有很多的介紹,比如 其中我認為對gridview 的 android layout width的設定是比較關鍵的 我是把它設定為乙個定值 例如1000dp 才能夠正常顯示的,其他情況下顯示不出來。2.對於gridview 某一項 子view 的獲取,使用getch...
NSDictionary的一些使用
1.這裡只有這兩個 如果乙個鍵 值對存在 setobject 這個方法就是 修改 如果乙個鍵 值對不存在 這個方法就是 增加。下面看個例子 判斷鍵值對存在與否是看鍵或者 值有乙個相同就是存在。1 nsstring last lastname 2 nsstring first firstname 3 ...