İçinde iki eylemle ilgili bir masa görüşüm var, ilk önce ben delegeyi didSelectRowAtIndexPath kullanın, ikincisi için başka bir şey yapmak için hücremdeki bir düğmede bir eylem kullanmak istiyorum. Benim problemim indeks yolunu elde etmeyi başaramam değil mi? Bunu yapmak için en iyi uygulama nedir? Eğer olarak endeks yolunu alabilirsiniz siz hücreye düğme eklediysenizBir hücrede düğme eyleminden indexPath tablo görünümünde nasıl alınır?
cevap
ardından
[cell.contentView addSubview:button];
, burada
- (void)onButtonTapped:(UIButton *)button {
UITableViewCell *cell = (UITableViewCell *)button.superview.superview;
NSIndexPath *indexPath = [tableView indexPathForCell:cell];
// Go ahead
}
Teşekkürler! UIButton * button = (UIButton *) gönderen; UITableViewCell * cell = (UITableViewCell *) button.superview.superview; –
Tamam! Hoşgeldiniz! – EmptyStack
Masaüstüne süper görünümden erişmemelisiniz. Bu şimdi çalışıyor olsa da yeni bir iOS üzerinde çalışmayabilir. 6/7 Apple'dan klasik örnek başka bir süper görüntü ekledi. Bu, – CW0007007
özel bir düğme için tam kodudur:
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellIdentifier = @"Cell";
CustomCellFilter *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (!cell) {cell = [[CustomCellFilter alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];}
//configure your cell here
cell.titleLabel.text = @"some title";
//add button
UIButton *myButton = [UIButton buttonWithType:UIButtonTypeCustom];
resetButton.frame = CGRectMake(40, 10, 18, 18);
[resetButton addTarget:self action:@selector(onButtonTapped:) forControlEvents:UIControlEventTouchUpInside];
[resetButton setImage:[UIImage imageNamed:@"someimage.png"] forState:UIControlStateNormal];
[cell.contentView addSubview:myButton];
//afterwards return the cell
return cell;
- (void)onButtonTapped:(UIButton *)button {
UITableViewCell *cell = (UITableViewCell *)button.superview.superview;
NSIndexPath *indexPath = [filterTable indexPathForCell:cell];
NSLog(@"%@", indexPath);
//use indexPath here...
}
Düğmeniz taşınırsa veya Apple görünüm görünümleri için görünüm hiyerarşisini değiştirirse, bu yöntem görünecek şekilde zincire gider. Bir UITableViewCell için:
- (void)tapAccessoryButton:(UIButton *)sender {
UIView *parentView = sender.superview;
// the loop should take care of any changes in the view heirarchy, whether from
// changes we make or apple makes.
while (![parentView.class isSubclassOfClass:UITableViewCell.class])
parentView = parentView.superview;
if ([parentView.class isSubclassOfClass:UITableViewCell.class]) {
UITableViewCell *cell = (UITableViewCell *) parentView;
NSIndexPath *indexPath = [self.tableView indexPathForCell:cell];
[self tableView:self.tableView accessoryButtonTappedForRowWithIndexPath:indexPath];
}
}
Bu çözümü kullanıyorum - hücre kullanarak noktalarının
endeksi yolunu almaCGPoint center= [sender center];
CGPoint rootViewPoint = [[sender superview] convertPoint:center toView:_tableView1];
NSIndexPath *indexPath = [_tableView1 indexPathForRowAtPoint:rootViewPoint];
NSLog(@"%@",indexPath);
mükemmel durumda
kilitlenir Bu, 'superView.superView' kullanmak yerine daha uygun olur – Mrug
bir koleksiyon görünümü kullandığınız Onun işi, sen Yogesh yöntemini kullanabilir, ancak indexPathForItemAtPoint için indexPathForRowAtPoint değerini şu şekilde değiştirebilirsiniz:
CGPoint center= [sender center];
CGPoint rootViewPoint = [[sender superview] convertPoint:center toView:_tableView1];
NSIndexPath *indexPath = [_tableView1 indexPathForRowAtPoint:rootViewPoint];
NSLog(@"%@",indexPath);
- 1. JavaFX tablo görünümünde düğme ekleme
- 2. Tablo görünümü hücrede görüntüle
- 3. IndexPath tabanlı hücre metni nasıl alınır?
- 4. Tablo görünümünde Swifyjson
- 5. Tablo hücresine tıklanabilir bir düğme nasıl eklenir?
- 6. Dinamik olarak, Android'de Tablo Düzeni'nde bir hücrede satır nasıl birleştirilir?
- 7. CheckBox'lar, asp .net kullanılarak denetlenen bir grid görünümünde nasıl alınır
- 8. iOS: Tablo görünümünde UISearchbar ekleme Tablo görünümünde seçenekler
- 9. Düğme tıklat yöntemi toplama görünümünde çalışmıyor
- 10. Tablo görünümünde R için işaretleme
- 11. Belirtilen düğme, iphone'daki bir düğmeler dizisinde (uitableview'de değil) nasıl görüntülenir?
- 12. Android'de tıklanan bir düğme nasıl ele alınır?
- 13. Düğme görünümünde metin dolgulamayı kaldırma
- 14. Görüntüyü koleksiyon görünümünde nasıl indirebilirim ve görüntü yüksekliğini Swift'de Alamofireimage ile hücrede saklayabilirim?
- 15. düğme dolgu tablo hücre
- 16. Tablo görünümünde sütun genişliğini ayarlama
- 17. Tablo görünümünde birden çok sütun
- 18. Tablo görünümünde gezinme denetleyicisi nasıl görüntülenir?
- 19. Tablo görünümünde hızlıca A - z nasıl ayrılır 2.0
- 20. CodeIgniter'de tablo yapısı nasıl alınır
- 21. presentModalViewController, bu düğme tablo görünümü ile bir sonraki görünümü gösterecektir
- 22. QTableView, her hücrede
- 23. IndexPath satır dizini
- 24. UISearchController dizini, indexPath üzerinde
- 25. Tablo görünümünde görünen json verilerimdeki başlıkların sayısını nasıl alabilirim
- 26. Swift Tablo görünümünde bir musluk olayını bir denetleyici yöntemine bağlamaya çalışmak
- 27. Geçerli kullanıcı adı bir hücrede nasıl gösterilir?
- 28. JavaFx'de Tablo Görünümünde Son Satırı Biçimlendirme
- 29. Tablo görünümünde düğme yapmak header şamandıra/sağa doğru programsal olarak hizala // Swift
- 30. Statik tablo görünümünde hızlı adaptif hücre yüksekliği
olası yineleme [IOS 7 - UITableViewCell'e yerleştirilen düğmeden indexPath nasıl alınır] (http://stackoverflow.com/questions/19000356/ios-7-how-to-get-the-indexpath-from-button-placed- in-uitableviewcell) –