2

プログラムでUITableViewを作成しましたが、スクロールしないことがわかりました。Interface Builderを使用するのではなく、プログラムでUITableViewを作成したのはこれが初めてです。ビューをスクロールできるようにするためにプログラムで設定する必要のあるプロパティはありますか?setBounces、setScrollEnabled、setAlwaysBounceVerticalを試しましたが、何も機能しないようです。どんなアイデアでも大歓迎です!ありがとう!

サンプルコード:

UIInterfaceOrientation interfaceOrientation = [[UIApplication sharedApplication] statusBarOrientation];
CGFloat height = (interfaceOrientation == UIInterfaceOrientationPortrait || interfaceOrientation == UIInterfaceOrientationPortraitUpsideDown) ? 460 : 300;
feed = [[UITableView alloc] initWithFrame:CGRectMake(0.0f, 44.0f, self.bounds.size.width, height - 44.0f)];
[feed setSeparatorColor:[UIColor colorWithRed:38.0f/255.0f green:43.0f/255.0f blue:63.0f/255.0f alpha:1.0f]];
[feed setBackgroundColor:[UIColor colorWithRed:48.0f/255.0f green:53.0f/255.0f blue:73.0f/255.0f alpha:1.0f]];
[feed setDataSource:self];
[feed setDelegate:self];
[feed setHidden:YES];
[feed setBounces:YES];
[feed setScrollEnabled:YES];
[feed setAlwaysBounceVertical:YES];
[feed setDelaysContentTouches:YES];
[self addSubview:feed];
4

5 に答える 5

1

TableView で delaysContentTouches を設定してみてください。

于 2012-05-15T22:04:16.130 に答える
0

これをコメントに入れようとしましたが、長すぎました...

set メソッドのほとんどはデフォルトを設定しているだけなので、コードの最終バージョンでは必要ありません。また、テーブルビューを作成してサブビューとして追加する方法にも問題はありません。これにより、バグは周囲のコードにあり、おそらくスーパービューのプロパティに関係していると思われます。「完全に機能している」と言うとき、セルを選択して didSelectRow... メソッドを呼び出すことができるということですか? テーブルビューを必要最小限に取り除いて、コメントアウトを試みることができます (init、addSubview、numberOfRows は 0 を返し、cellForRow は nil を返します。デリゲートとデータソース以外は設定しないでください)。これにより、何も入っていなくてもスクロールしてバウンスする空のテーブルビューが得られるはずです。

于 2012-05-16T17:05:06.323 に答える
0

スクロールするには、ScrollView に contentSize を設定する必要があります。contentSize を設定してみてください:

[feed setContentSize:[feed frame].size];
于 2012-05-15T22:56:36.997 に答える
0

iOS シミュレーターを起動する Xamarin Studio を使用しています。Mac を再起動する必要がありました。テーブルビューが再びスクロールします。Xamarin または iOS シミュレーターを再起動するだけでは機能しませんでした。

于 2014-09-17T09:30:50.810 に答える
0

これが古いスレッドであることは承知していますが、iOS シミュレーターでこの問題が発生している可能性はありますか? テーブル ビューでも同じ問題が発生していましたが、シミュレーターで正しいジェスチャを使用していないことが判明しました。iPhone シミュレーターでスクロールする UITableView リストを取得できないを参照してください。

于 2013-05-30T00:16:37.063 に答える