활동, 통과시킬 수 있는 부분에 전달하는 방법을 가변적입니다 뒤로를?

나는 현재 안드로이드 애플리케이션 (앱) 을 활동 및 조각 사이의 날짜 전달하십시오 만들어 보고 싶습니다. 내 활동 버튼를 조각이 열리고 있다. 다테피커프레이크망.

날짜, 어떤 난 내 활동 가르켜 수정할 수 있는 부분. I want to pass 날짜 및 전송할 수 있어 다테피커 다시 활동까지입니다.

39, ve 많은 해결책을 작동하고 있지만 아무도 i& 했다. 쉬운 방법 등을 수행할 수 있지만, t # 39 이 can& 인수를 통해 전달할 것이라고 밝혔다.

질문에 대한 의견 (1)
    • 전날에약혼자에게 스테거멘츠 정보를 전달하는 데 조각을 만들 때 언크리치 방법에 따라 정보기술 (it), 나중에 이 인수를 통해 부분 또는 언크리티비우 검색할 수 있습니다.

네가 네 조각을 네윈스턴스 보낼 수 있는 기능을 추가할 인수만 있다.

/**
 * Create a new instance of DetailsFragment, initialized to
 * show the text at 'index'.
 */
public static DetailsFragment newInstance(int index) {
    DetailsFragment f = new DetailsFragment();
    // Supply index input as an argument.
    Bundle args = new Bundle();
    args.putInt("index", index);
    f.setArguments(args);
    return f;
}

이 부분의 언크리치 언크리티비우 방법에 따라 '다음 인사이드' 또는 '' 이렇게 인수만 검색할 수 있습니다.

Bundle args = getArguments();
int index = args.getInt("index", 0);
  • 스케쳐내 이제 활동 부분 중에서 전달하십시오 사용해야 할 수 있는 (데이터 전송 방관하겠나) * 인터페이스입니다. The way you 가 정말 잘 할 수 있는 소통의 조각을 붽뎄 자습서는 설명했다. 모든 활동을 통해 서로 간의 통신을 조각 때문에 이 자습서에서는 방법을 볼 수 있는 부분이 그의 활동을 통해 실제 데이터를 보낼 수 있는 다른 조각을 컨테이너입니다 전달할 수 있는 활동 작업또는 이 데이터를 사용할 수 있습니다.

문서용으로 자습서는:

http://developer.android.com/training/basics/fragments/communicating.html

해설 (7)

"에서 데이터를 전송하는 작업 '을' 조각 '

  • Activity:*
Bundle bundle = new Bundle();
String myMessage = "Stackoverflow is cool!";
bundle.putString("message", myMessage );
FragmentClass fragInfo = new FragmentClass();
fragInfo.setArguments(bundle);
transaction.replace(R.id.fragment_single, fragInfo);
transaction.commit();
  • Fragment:*

판독값 의 값이 조각

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
    String myValue = this.getArguments().getString("message");
    ...
    ...
    ...
}

그러나 보내려면 절 행사, 답을 합니다 의 값을 읽어 제프리 도고 인터페이스와도 필요한 추가 정보: 통신하는 다른 파편으로

해설 (3)

이벤트 전달할 수 있는 라이브러리를 사용하여 프랑버스 랩탑에는 가변으로 앞뒤로. # 39 의 활동 및 부분 때문에 좋은 솔루션이 it& 느슨하게 연결된 유지합니다.

https://github.com/greenrobot/EventBus

해설 (1)

덕분에 @ρяσѕρєя ᄀ씨, 테리. 이를 통해 완벽하게 작동됨 저를 많이 및

활동 의도 사용하여 데이터를 보낼 수 있다.

Bundle bundle = new Bundle(); 
bundle.putString("edttext", "From Activity"); 
// set Fragmentclass Arguments
Fragmentclass fragobj = new Fragmentclass();
fragobj.setArguments(bundle);

또한 부분 언크리티비우 방법:

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
        Bundle savedInstanceState) {
    // get arguments
    String strtext = getArguments().getString("edttext");    
    return inflater.inflate(R.layout.fragment, container, false);
}

참조: 데이터를 전송할 수 있는 활동 부분 안드로이드

해설 (0)

코틀린 개발자를 위해 축복내린 거기에:

다음은 안드로이드 스튜디오 데이터를 전송하기 위해 제안된 솔루션 데이터베이스에구성원을 조각 (= 만들 때 사용하는 파일 - 빈 부분을 &gt. 새로운 - &gt. 단편 - &gt. 조각 조각 (빈) 와 있는지 포함시키십시오 methods&quot 팩터리의 ";).

이거 내 조각:

class MyFragment: Fragment {

...

    companion object {

            @JvmStatic
            fun newInstance(isMyBoolean: Boolean) = MyFragment().apply {
                arguments = Bundle().apply {
                    putBoolean("REPLACE WITH A STRING CONSTANT", isMyBoolean)
                }
            }
     }
}

'좋은' 는 자마카베리 하는 데이터 집합 객체 생성 시, 또는 이를 그들은 스테이드 여기서요:

&gt. [블록] 을 (를) '이' 등 단말기 값을 지정한 함수 호출 &gt. '이' 및 반환 값.

그럼 작업또는 할 수 있는 부분.

val fragment = MyFragment.newInstance(false)
... // transaction stuff happening here

읽어서 인수만 에 다음과 같은 부분

private var isMyBoolean = false

override fun onAttach(context: Context?) {
    super.onAttach(context)
    arguments?.getBoolean("REPLACE WITH A STRING CONSTANT")?.let {
        isMyBoolean = it
    }
}
  • 를 send&quot "; * 데이터베이스에구성원을 활동을 할 수 있는 함수를 정의하여, 단순히 데이터를 다시 활동 및 다음 네 조각:
(activity as? YourActivityClass)?.callYourFunctionLikeThis(date) // your function will not be called if your Activity is null or is a different Class

The magic of 경험하십시오 코틀린!

해설 (0)
    • 활동 등을 통해 데이터를 전송하는 XML 로 링크됨

조각을 만들 경우, 예를 들어 있는 안드로이드 스튜디오 중 하나를 사용하여 파일 &gt 템플릿일 새로운 &gt. 조각 &gt. 조각 (목록) 한 후, 이 부분은 XML 을 통해 링크됨. 하지만 이 방법은 없다, 이렇게 만들어진 네윈스턴스 조각이 t # 39 라는 can& 인수만 전달하는 데 사용됩니다.

대신 오버라이드합니다 오나타크프레이크망 활동 방법

@Override
public void onAttachFragment(Fragment fragment) {
    if (fragment instanceof DetailsFragment) {
        Bundle args = new Bundle();
        args.putInt("index", index);
        f.setArguments(args);        
     }
}

그 부분의 언크리치 다른 방법으로 답을 인수만 읽을 수 있는

해설 (0)

네 조각을 수신기마다 번들에는 인스턴스화하지 됩니다.

Fragment fragment = Fragment.instantiate(this, RolesTeamsListFragment.class.getName(), bundle);
해설 (0)