2017-04-16 2 views
0

조각이 있습니다. 실제로 3 페이지가있는 곳으로 스 와이프 할 수 있습니다. 각 페이지에는 "Hello world from section : % 1 $ d"와 같은 기본 String이 있습니다.이 문자열은 문자열에 저장됩니다. XML "조각의 TextView 내용을 변경하십시오.

그리고 조각 자바 클래스 메서드는 다음과 같습니다

@Override 
    public View onCreateView(LayoutInflater inflater, ViewGroup container, 
          Bundle savedInstanceState) { 
     View rootView = inflater.inflate(R.layout.fragment_generaldiscription, container, false); 
     TextView textView = (TextView) rootView.findViewById(R.id.section_label); 
     textView.setText(getString(R.string.section_format, getArguments().getInt(ARG_SECTION_NUMBER))); 
     textView.setText("test"); // testing purposes 
     return rootView; 
    } 
} 

내 질문은 : 나는 모든 페이지가 같은 텍스트를하고 싶지 않아 제 1 있습니다."섹션에서 안녕하세요 세계 : 1 "섹션 2에는"섹션 2의 Hello World "가 있습니다.

섹션 1에는"안녕하세요, 이것은 조각의 섹션 1 "과 같은 다른 문자열이 있어야합니다. 어떻게해야할까요? 다른 문자열을 표시하려면?

고마워요.

답변

1

다른 문자열을 표시하려면 변수가 필요합니다. 그 이유는 strings.xml이 작동하지 않는 이유입니다. 다른 문자열 객체

초기화 세 조각 다음 텍스트 뷰를 descripbe하는

2 단계를 String 객체를 포함

사용자 정의 생성자 : 여기


1 단계 내 솔루션입니다 FragmentAdapter 클래스에서

3 단계 : 그것은

매우 좋아요 코드를 사용할 수 있습니다 whther 테스트는 당신이 그것을 얻을 수 있습니다 :)

을, 내가하려고 여기 엔 작성하는 것은 convinent 아니에요, 조금 지루
2

엉덩이를 다룰 때 고통스러워 보입니다. 대신 Cheesesquare을 사용하고 싶습니다. 필요한 페이지를 추가하려면 adapter.addFragment(new CheeseListFragment(), "Category 1"); 및 단편 클래스 내에서 사용자 정의가 수행됩니다.

1

"Hello world from section : 1"을 가진 모든 페이지에 대해 생각하고 두 페이지에 다른 텍스트를 추가하면 두 페이지가 겹칩니다. 서로의 텍스트. 그런 다음 문제가 발생했습니다. 배경에서 다른 색상이나 이미지를 원하면 섹션 1 텍스트가 배경색 때문에 흰색이됩니다. 그런 다음 레이아웃에서 android : background = "# ffffff"를 사용합니다. 그리고 2 번 섹션에는 "Hello world from section : 2"만 표시되며 xml에는이를 설정합니다. 이것은 완벽한 해결책이 아니지만 그것은 나를 위해 작동합니다.

관련 문제