2010-02-11 89 views
0

首先,我是一个完整的初学者。iPhone:从文件和UISegmentedControl读取文本

这就是说,我认为一个雄心勃勃的长期项目/学习经验是创建一个显示每日报价的应用程序,就像我们的祖母在浴室里那些平常的日历一样。我希望它每天有两个,每个都由UISegmentedControl中的选项卡表示。这是长期的。现在我很乐意得到一天的报价功能。

走上问题:

  1. 我怎样才能文本保存为.txt或.rtf文件在一个UITextView显示?最好不要使用'stringWithContentsOfFile',因为Xcode告诉我这已经被弃用了。

  2. 如何在用户点击第二个分段时从另一个文件(或可能是同一个文件的不同部分?)显示内容?

如果我可以让它运行,以便满足这两个条件,并且我明白发生了什么,我会认为这一天是成功的。谢谢!

回答

1

1.

NSError *error = nil; 
NSStringEncoding stringEncoding; 
NSString *fileText = [NSString stringWithContentsOfFile:@"/path" usedEncoding:&stringEncoding error:&error]; 
myTextView.text = fileText; 

错误和编码是可选的,你可以在零通过两种。但是如果你关心错误,或者文件的编码方式是什么,那么在创建字符串之后,他们会在它们中获得有用的信息。

2.

设置在Interface Builder中valueChanged出口到IBAction为你的控制器上,如setSegmentValue:。然后,假设你有一串引号字符串:

- (IBAction)setSegmentValue:(id)sender { 
    UISegmentedControl *control = (UISegmentedControl*)sender; 
    NSString *quote = [quotes objectAtIndex:control.selectedSegmentIndex]; 
    myTextView.text = quote; 
} 
+0

谢谢,这让我在路上 – 2010-02-12 03:51:33

+0

甜!今晚我有一些时间来摆弄,这只是我需要的帮助。一切工作都令我满意,我想我明白了一切正在进行。再次感谢您花时间帮助新手! – 2010-02-14 08:43:45

1

即使stringWithContentsOfFile:已被弃用,stringWithContentsOfFile:usedEncoding:error:不是。这是用于从文件读取的标准方法。



至于第二个问题,只需测试分段控制的状态,并执行基于它的行动。诚然,这是一个高水平的答案,但应该让你去。