2017-09-21 5 views
1

저는 Android가 정말 새롭습니다. 다른 클래스의 텍스트보기로 데이터를 전달하려고합니다. 그러나 어떤 이유로 든 두 번째 클래스/페이지에 나타나지 않습니다 (텍스트 뷰는 변경되지 않았습니다). 안드로이드 어노테이션을 사용하지 않을 때 할 수 있었지만 어노테이션을 사용하는 것이 훨씬 쉽습니다. 그래서 그것을 변환하려고 시도하고 있지만 어떤 이유로 작동하지 않습니다. 나는 뭔가를 놓칠지도 모른다.Android 특수 효과를 사용하여 인 텐트로 추가 데이터를 얻으려면 어떻게해야합니까?

주 1

package com.example.faculty.labactivity; 

import android.content.Intent; 
import android.support.v7.app.AppCompatActivity; 
import android.os.Bundle; 
import android.widget.Button; 
import android.widget.CheckBox; 
import android.widget.EditText; 
import android.widget.Toast; 

import org.androidannotations.annotations.Click; 
import org.androidannotations.annotations.EActivity; 
import org.androidannotations.annotations.ViewById; 

@EActivity(R.layout.world) 
public class MainActivity extends AppCompatActivity { 

    @ViewById(R.id.userName) 
    EditText user; 


    @Click(R.id.signIn) 
    public void signInButton(){ 

    Main2Activity_.intent().name(user.getText().toString()).start(); 

    } 

홈페이지하여 수신 활동에

package com.example.faculty.labactivity; 

import android.content.Intent; 
import android.support.v7.app.AppCompatActivity; 
import android.os.Bundle; 
import android.widget.TextView; 

import org.androidannotations.annotations.AfterViews; 
import org.androidannotations.annotations.Click; 
import org.androidannotations.annotations.EActivity; 
import org.androidannotations.annotations.Extra; 
import org.androidannotations.annotations.ViewById; 

@EActivity(R.layout.welcome) 
public class Main2Activity extends AppCompatActivity { 

@Extra("name") 
String n; 

@ViewById(R.id.name) 
TextView tv; 

Intent in2 = getIntent(); 

@AfterViews 
void home(){ 
    tv.setText("Hello, " + n + " !"); 
    } 

} 

답변

3

이 당신이 그

@Extra("name") 
String name; 
처럼 수신 할 객체의 이름을 선언해야합니다 (예를 들어 MyActivity에 대한)

데이터를 전달하려면 의도를 만들 때 다음과 같이해야합니다 :

Main2Activity_.intent(this).name(user.getText().toString()).start(); 

더 정확한 해결책이 필요한 경우 더 많은 코드를 표시하도록 질문을 편집하십시오.

당신은 더 완전한 예 그것은 당신이 당신의 project_root/build.gradleapp/build.gradle 파일에 주석 추가해야합니다 종속성으로해야 할 수도 있습니다

+0

안녕하세요! 대답 해줘서 고마워. 나는 당신의 코드를 따르려고했지만 Main2_intent()에 오류가있다 - 그것은 'intent()'메서드를 해결할 수 없다고 말했다? –

+0

내게 Main2 코드를 게시하십시오 – firegloves

+0

전체 코드를 추가했습니다 :) –