簡體   English   中英

如何使用另一個tableView選定的行值重新加載tableView?

[英]How to reload tableView with another tableView selected row values?

在這里輸入圖像描述,我在單個ViewController中創建了4個UITableView。
例如 (主UITableView,項目UITableView,問題UITableView,活動UITableView)。

主UITableView有10行,每行(項目,問題,活動)中都有一個按鈕。 當在Project UITableView中單擊按鈕時,將顯示並選擇主UITableView中的任何值,並且在所選值上顯示Project按鈕。

使用委托

在table1.h中

@protocol Table1Delegate;

@interface Table1ViewController : UIViewController
@property (nonatomic, weak) id < Table1Delegate > delegate;

@end

@protocol Table1Delegate
@required

@optional
    -(void) table1ViewControllerDidSelectRowAtIndexPath:(NSIndexPath *)indexPath;

@end


@interface table1ViewController : UITableViewController 

@property (nonatomic, weak) id < Table1Delegate > delegate;
@end

在table1.m文件中

在didSelectRowAtIndexPath中

-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
//do what you do an then call
 [self.delegate table1ViewControllerDidSelectRowAtIndexPath: indexPath];

}

在table2.h中

#import table1.h
#import "fa13ChooseListTableViewController.h"

@interface fa13ClubTableViewController : UITableViewController<MenuViewControllerDelegate>
@end

在viewDidLoad中的table2.m中,您需要getTable1控制器實例並將其委托屬性設置為table2實例(自己),然后實現table1ViewControllerDidSelectRowAtIndexPath委托方法

-(void) table1ViewControllerDidSelectRowAtIndexPath:(UICollectionViewController *)controller {
//do what you need to do with data from table1

}

以indexPath為例,您可以通過路徑委托任何想要的對象。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM