2011-10-26 2 views
3

MonoTouch.Dialog RadioElements를 사용하여 데이터를 선택하고 TableView BackgroundViews에 대한 UIImageView가 있어야합니다.생성 된 RadioGroup에 대한 BackgroundView 상속/설정 DialogViewController TableView (MonoTouch.Dialog)

초기 DialogViewController의 TableView에서 BackgroundView를 설정할 수 있으므로 문제는 없지만 각 RadioGroup에 대해 생성 된 TableView에는 기본 회색 배경 이미지가 있으며 동일한 배경 스타일로 변경하는 방법을 찾지 못하는 것 같습니다. 초기 TableView로.

MonoTouch.Dialog 소스를 이동하거나 수정하지 않고도 생성 된 TableView의 BackgroundView (각 RadioGroup에 대해 생성 된 TableView)를 변경할 수 있습니까?

미리 감사드립니다.

+1

죄송합니다. 원래 질문을 잘못 읽었습니다. 나는'RadioGroup '이 UI와 관련이 없다는 인상을 받았다. 다시 말해서 테이블을 필요로하지 않는다. RootElement의 TableView 일 수 있습니까? 그렇다면 동일한 상속 및 오버라이드 트릭이 가능합니다. – poupou

+0

이전에 발견 한 내용입니다. 감사! – bertusaurus

+0

그럼 최종 답변은 무엇입니까? – Dylan

답변

3

AFAIK 자신 만의 요소를 만들어야합니다. 그러나 좋은 소식은 그 다음

public class TransparentRootElement : RootElement { 

    // add required .ctors 

    public override UITableViewCell GetCell (UITableView tv) 
    { 
     var cell = base.GetCell (tv); 
     cell.BackgroundColor = UIColor.Clear; 
     return cell; 
    } 
} 

당신은 단지 당신이 RadioGroup를 만드는 곳이 새로운 TransparentRootElement 유형을 사용해야합니다 : 예컨대, 할 아주 쉽게 이야입니다.

+0

개별 셀이 아닌 TableView 자체의 배경을 설정하려고합니다. – bertusaurus

+0

RadioElement가 아니라 RootElement를 참조하도록 편집 한 응답 – poupou

0
public class CustomRootElement : RootElement 
{ 
    public CustomRootElement(string caption, RadioGroup group) : base(caption, group) 
    { 

    } 
    protected override MonoTouch.UIKit.UIViewController MakeViewController() 
    { 
     DialogViewController result = (DialogViewController)base.MakeViewController(); 
     // set the background here 
     result.TableView.BackgroundColor = UIColor.ScrollViewTexturedBackgroundColor; 

     return result; 
    } 

} 
관련 문제