0

にテキストを表示したいだけですが、テキストの長さが許可されたサイズよりも大きい場合、文字列が表示されますUIAlertView"Null"

テキストが画面よりも大きくなることはないと確信しているので (半分より少し大きい程度)、そのための を実装するのが複雑になりたくありませんScrollView

のサイズを変更するために uialertview のサイズを変更する際の問題に従いますAlertViewが、機能せず、さらに奇妙な視覚効果が生成されます。

この第 3 部のコンポーネントhttps://github.com/inamiy/YIPopupTextViewを試してみましたが、コンパイルに合格することさえできません。(すでにその 4 つのファイルをプロジェクトにインポートしています。) 理由はわかりません。

したがって、実際には、表示できるテキストのサイズを大きくしたいだけですAlertView。何か案が?

4

2 に答える 2

3

小さなテストプログラムを書きました。Single View Application テンプレートに追加したのは次の 1 つだけです。

- (void)viewDidAppear:(BOOL)animated {
    NSMutableString *message = [[NSMutableString alloc] init];
    while (message.length < 100000) {
        [message appendString:@"Hello, world!  "];
    }
    [message appendString:@"This is the end."];
    UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Test" message:message delegate:nil cancelButtonTitle:@"Done" otherButtonTitles:nil];
    [alert show];
}

これは、iOS 5.0 を実行している iPhone シミュレーターと、iOS 6.0.2 を実行している iPhone 5 で正常に動作します。すべてのテキストが (スクロール可能なテキスト ビューで) 表示されます。

あなたの問題はおそらくテキストのサイズではありません。

于 2013-01-24T09:15:55.853 に答える
0

辞書で解析された JSON オブジェクトの結果を表示し、alertView に出力しているときに、奇妙な動作を見つけました (Xcode 5.1.1 で、iPhone 64 ビット シミュレーターで iOS 7.1 用にコンパイル)。同じ入力データの場合:

[[UIAlertView alloc]initWithTitle:@"something" message:[[[NSString stringWithFormat:@"json:%@",[inputData dictionaryRepresentation]] stringByReplacingOccurrencesOfString:@" "withString:@""]substringToIndex:7035] delegate:self cancelButtonTitle:@"ok" otherButtonTitles: nil];

正しく印刷されますが、「substringToIndex:7036」と言うと空白しか表示されません...「stringByReplaceingOccurrencesOfString:」メソッドがなければ、制限ははるかに超えています:

[[UIAlertView alloc]initWithTitle:@"something" message:[[NSString stringWithFormat:@"json:%@",[inputData dictionaryRepresentation]] substringToIndex:13768] delegate:self cancelButtonTitle:@"ok" otherButtonTitles: nil];

正しく印刷されますが、代わりに「substringToIndex:13769」が印刷されません...最大長の問題ではなく、JSONオブジェクト内の特殊文字の問題であることに気付きました

于 2014-11-06T14:36:17.043 に答える