プログラム全体のどこでも tableview 関数を呼び出す方法があるかどうか知りたかったのです。つまり、この関数を呼び出したいということです。
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
私のコードのどこにでも。とにかく自己機能または何かを使用することはありますか、それが可能な場合はありますか? ありがとう。
プログラム全体のどこでも tableview 関数を呼び出す方法があるかどうか知りたかったのです。つまり、この関数を呼び出したいということです。
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
私のコードのどこにでも。とにかく自己機能または何かを使用することはありますか、それが可能な場合はありますか? ありがとう。
きっとできます。NSIndexPath
次のように、オブジェクトを渡すことができる必要があります。
UITableViewCell *cell = [self.tableView cellForRowAtIndexPath:indexPath];
セル オブジェクトが返されたらcellForRowAtIndexPath
、次のようにそのプロパティなどにアクセスできます。
cell.backgroundView.alpha = 0.0;
また、カスタム UITableViewCell を使用している場合は、呼び出しを型キャストすることでカスタム セルを取得できます。
MyCustomCellClass *cell = (MyCustomCellClass *)[self.tableView cellForRowAtIndexPath:indexPath];
あなたはこのようにそれを行うことができます:
// First do modifications in the datasource for table
// And then you can reload the specific row like this:
NSIndexPath *indexPath = [NSIndexPath indexPathForRow:0 inSection:0];
[self.tableView reloadRowsAtIndexPaths:@[indexPath] withRowAnimation:UITableViewRowAnimationAutomatic];
また、cellForRowAtIndexPathが呼び出されない理由は、デリゲートを設定していないか、テーブルが画面に表示されている行に対してこの関数を呼び出すため、表示するUIに表示されている行がないためである可能性があります。したがって、テーブルのフレームも確認してください。
[tableviewreloadData]を呼び出すだけです。これにより、インデックスパスの行のセルが呼び出されます。