Merhabalar,

Bir to-do uygulaması yapıyorum. Takip edenler artık farkına varmıştır. :) Hızlı task ekleme yapmak istiyorum. İlk başta hızlı ekleme kısmını saklıyorum. Ancak tekrardan kaybedemiyorum. Şöyle ki;

-(void)viewDidAppear:(BOOL)animated
{
    [super viewDidAppear:animated];
    self.tableView.contentOffset = CGPointMake(0, 44);   
}

Yukarıda contentOffset kullanarak 44 birimlik aşağıya atıyorum burda sorun yok. Ancak table view yukarı doğru ittiğimde doğal olarak yukarı çıkmıyor. Bende task'ı ekledikten sonra aynı kod ile yukarı ittirmeye çalışıyorum. Ancak bu sefer bu kod işe yaramıyor. İşlemi textFieldShouldReturn sayesinde yapıyorum. Ufak bir ihtimal ama sebebi bu olabilir belki. Fikri olan yada bu methottdan başka bir yol bilen çıkarsa süper üstü olur.

soruldu: 01 Nis '13, 22:27

Salieh's gravatar image

Salieh
2081014
cevap kabul oranı: 0%

değiştirildi: 02 Nis '13, 01:39

creseos's gravatar image

creseos
2.0k468187

sorunuzdan tam olaran ne yapmak istediğiniz konusunda hiçbirşey anlamadım, task eklediğinizde otomatik olarak yeni eklenen task'a mı navigate etmek istiyorsunuz?

(02 Nis '13, 07:46) dreampowder dreampowder's gravatar image

Şöyle ki quik add şeklinde bir kısım eklemek istiyorum ve bunu table view'in üstüne koydum. Uygulama ilk açıldığında self.tableView.contentOffset = CGPointMake(0, 44); bu kod sayesinde aşağıya doğru kayıyıor. ve quik add bölümü kapalı kalıyor. Kullanıcı tableview aşağı dogru sürükleyince bu kısmı görüyor. Ancak geri yukarı doğru ittiğinde kaybolmuyor. Bunu nasıl çözebilirim anlatmak istediğim tam olarak buydu.

(02 Nis '13, 23:23) Salieh Salieh's gravatar image

Yukarı doğru gittiğinde kaybolmaması kadar normal birşey yok :). tableview'i tamamen 44 pixel aşağı kaydırıyorsunuz ve üstüne bir textbox ekliyorsunuz :). yukarı aşağı kayan şey sizin sonradan eklediğiniz textbox'ı barındırmıyor.

Bunu için 2 farklı yöntem aklıma geliyor.

1- Tableview içerisinde 1. satırda herzaman textbox içeren (belkide yanında da bir ekle butonu) bir cell olmasını sağlayabilirsiniz, cellforrowatindexpath içerisinde (kodları aklıdan yazıyorum hata olabilir)

if(indexPath.row==0){
       UITextfield *text = [[UItextfield alloc]initwithFrame:CGRectMake(0,0,320,44)];
        [cell.contentview addSubview:text]
}

sonrasında textfield delegate metoduna done butonuna tıklandığında yeni datanın tableview array'ine eklenin [tableview reloaddata] çağrısıyla tableview2i yenileyebilrsiniz.

2- Tableview'i kaydırmak yerine halihazırda tableview içerisinde bulunan tableview.searchbar özelliğini kullanmak daha mantıklı gözüküyor.

Kolay bir şekilde tableview.searchbar için delegate metodunu arama yapmak yerine içerisine yazılan metni data olarak kaydettirip [self.tableview reloaddata] şeklinde tableview'ini güncelleyebilirsin..

veya yine textfield delegate metodunda done butonuna tıklandığında searchbar içerisindeki metni todo liste ekleyebilirsin...

şurada çok basit bir şekilde anlatılmış.

alt text

permanent link

cevaplandı: 04 Nis '13, 10:22

dreampowder's gravatar image

dreampowder
3.3k112849
cevap kabul oranı: 23%

Cevabınız
toggle preview

Bu soruyu takip et

E-Posta üzerinden:

Üyelik girişi yaptıktan sonra abonelik işlemlerini yapabilirsiniz

RSS üzerinden:

Cevaplar

Cevaplar ve Yorumlar

Yazı Formatlama

  • *italic* ya da _italic_
  • **bold** ya da __bold__
  • link:[text](http://url.com/ "başlık")
  • resim?![alt text](/path/img.jpg "başlık")
  • liste: 1. Foo 2. Bar
  • temel HTML etiketleri de kullanılabilir

Bu sorunun etiketleri:

×45
×16
×12
×5

Soruldu: 01 Nis '13, 22:27

Görüntüleme: 834 kez

Son güncelleme: 04 Nis '13, 10:22

powered by BitNami OSQA