2017-10-06 3 views
-2

일부 조각이있는 TabWidget이 있습니다. 그 안에 ProgressBar를 표시하고 싶지만 ProgressBar는 표시되지 않습니다. 여기 내 코드 :ProgressBar 프로그램에서 조각 내

private ProgressBar progressBar; 

public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { 

    View view = inflater.inflate(R.layout.roomstatusadmin_activity, container, false); 

    progressBar = new ProgressBar(getActivity().getApplicationContext(), null, android.R.attr.progressBarStyleSmall); 
    progressBar.setIndeterminate(true); 
    progressBar.setVisibility(View.VISIBLE); 
    //FrameLayout.LayoutParams layoutParams = new FrameLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT); 
    //layoutParams.gravity = Gravity.CENTER; 
    RelativeLayout.LayoutParams layoutParams = new RelativeLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT,ViewGroup.LayoutParams.MATCH_PARENT); 
    layoutParams.addRule(RelativeLayout.CENTER_IN_PARENT); 
    progressBar.setLayoutParams(layoutParams); 

    return view; 
} 

몇 가지 질문을 읽었지만 this과 같은 해결책이 없습니다. ProgressBar를 layout.xml에 추가하면 ProgressBar가 표시됩니다. 하지만 일부 레이아웃에서는이 ProgressBar를 사용하므로 프로그램 적으로 필요합니다. 미리 감사드립니다.

+0

제거'getApplicationContext를 만든 후 마지막에 부모 레이아웃이 추가()' –

답변

1

을 당신은 진행 막대를 생성하고 해당를 부착 view.To에 부착되지 않습니다 frgament보기는 fargment의 부모 레이아웃의 ID를 찾습니다.

YOURPARENTLAYOUT layout=(YOURPARENTLAYOUT)view.findViewById(R.id.yourParentLayout) 

그리고 진행 막대

layout.addView(progressBar); 
+0

오, 알았어요. 그것의 쇼는 지금 –

+0

감사합니다. 가장 환영합니다. – Anonymous

+0

센터를 수평 및 수직으로 만드는 방법? –

2

조각의 레이아웃에 Progressbar를 추가하지 않았습니다.
레이아웃 xml을 팽창시키고 루트보기로 캐스팅합니다. 루트 뷰가 다음 RelativeLayout의 인 경우 :
RelativeLayout view = (RelativeLayout)inflater.inflate(R.layout.roomstatusadmin_activity, container, false);

이제 레이아웃에 진행 막대를 추가
view.addView(progressBar);

+0

당신은 확신? 나는'view'가'View' 타입이고'addView'가 없다고 생각합니다. 하지만 컨테이너에는'addView'가 있지만 여전히 작동하지 않습니다. 하지만 대답을 주셔서 감사 드리겠습니다 –

+0

제 대답에있는'view'는'ViewView' 인'ViewGroup' 인'RelativeLayout'입니다. – Neeraj

+0

오해가 있다고 생각합니다. 위의 코드에서'view'는'View'이고'Layout' 타입의'view'에 답을주게됩니다. 당신의 대답은 저에게도 일합니다. –