2011-06-08 11 views
0

私の問題は、1つのテーブルビューに4つのセルが表示されていることです。それらのセルには1つのcutomボタンもあります。そのボタンをクリックすることにより、チェックマーク画像のようにボタン画像を変更する必要があります。UITableviewボタン画像の問題

私は試してみましたが、正しくできませんでした。私のreqは、インデックスのボタン画像を変更する必要があるインデックスゼロでセルをクリックする場合です。

誰でも私にこれを助けることができます。

ありがとうございます。

+0

あなたは出力が得られたのですか?何か助けが必要な場合、それは私のために働いていない何 – Tendulkar

+0

を私に尋ねますインデックス0の場合、私はindex0をクリックすると最後のインデックス画像が変化しています。 (m_checkButton.imageView.image == [UIImage imageNamed: "checkbox_unchecked.png" @])の場合:私はあなたのコードに変更された場合は何も私のコードがある が起きていない \t \t \t { \t \t \t \t [m_checkButton setImage:[UIImage imageNamed:@ "checkbox_checked.png"] forState:UIControlStateNormal]; \t \t \t} \t \t他\t \t \t \t { \t \t \t \t [m_checkButton setImage:[UIImage imageNamed: "checkbox_unchecked.png" @] forState:UIControlStateNormal]。 \t \t \t} – vidya

+0

私はAmit.iがdidSelectRowAtIndexPathのコードの下に書いたあなたの再生のため – Tendulkar

答えて

0

あなたはあなたがボタン

[comboButton setBackgroundImage:[UIImage imageNamed:@"firstImage.png"] forState:UIControlStateNormal] 
[comboButton setBackgroundImage:[UIImage imageNamed:@"second.png"] forState:UIControlStateHighlighted] 
  • とのtableViewデリゲートメソッドのtableView内にMSGを渡す必要がある二つのこと

    1. を実行する必要があります。didSelectRowAtIndexPath:ハイライトされ

    2. にボタンの状態を設定します
  • +0

    感謝を与えている答えを見ていないしてください自由に – vidya

    +0

    私は同じボタンを使っていますが、これはうまくいきました。このステートメントがなければ、私はボタン画像をチェックしたり変更したりすることはできません。そのためには – vidya

    +0

    を追加しました..... \t [btn setImage:[UIImage imageNamed:@ "3.png"] forState: UIControlStateHighlighted]; \t [btn setHighlighted:YES]; ... これはうまく動作し、私はそれをテストしました –

    1

    .hファイルにselectedIndexを書き込む

    - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { 
    
        static NSString *CellIdentifier = @"Cell"; 
    
        UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier]; 
        if (cell == nil) { 
         cell = [[[UITableViewCell alloc] initWithFrame:CGRectZero reuseIdentifier:CellIdentifier] autorelease]; 
        } 
    
        if(selectedindex==indexPath.row){ 
         cell.accessoryType=UITableViewCellAccessoryCheckmark; 
           //here you can change the backgroundimage. 
    button]setbackgroundImage:[UIImage imageNamed:@"1.Jpg"]; 
    } 
    
    
    
        return cell; 
    } 
    
    - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { 
    
        selectedIndex=indexPath.row; 
        [tableView reloadData]; 
    } 
    
    +5

    答えを改善してください.... –

    +0

    はい。私はそれを試したが、動作していない。 – vidya