2011-08-20 7 views
-2

프로젝트에 문제가 있습니다. 나는 두 가지 활동 사이에서 의사 소통하려고 노력하고 있지만 문제는 활동의 의도입니다. ListView가있는 검색 활동이 있는데 ListView 항목을 클릭하면 해당 항목에 대한 세부 정보를보고 싶지만 발생하지는 않습니다. 누군가 나를 도울 수 있습니까? 이것은 내 프로젝트에 대한 링크입니다. http://www.mediafire.com/?b4zcqtbeah8wlx9 대단히 감사합니다.Android - 두 가지 문제가 있습니다.

편집 :이 세부 활동

:

import android.app.Activity; 
import android.content.Intent; 
import android.os.Bundle; 
import android.widget.ImageView; 
import android.widget.TextView; 

public class Details extends Activity 
{ 
@Override 
protected void onCreate(Bundle savedInstanceState) 
{ 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.last_layout); 

    final Intent intent = getIntent(); 
    if (intent.hasExtra("selectedChild")) 
    { 
     final Child selectedChild = (Child) intent.getSerializableExtra("selectedChild"); 
     if (selectedChild != null) 
     { 
      ((TextView) findViewById(R.id.Title)).setText(selectedChild.getName()); 
      ((ImageView) findViewById(R.id.imageView1)).setImageResource(getResources().getIdentifier(selectedChild.getImage(), 
        "drawable", "com.test.com")); 
     } 
    } 
} 

}

이 검색 활동 : 난 당신의 코드를 살펴하지 않았다

import java.util.ArrayList; 

import android.os.Bundle; 
import android.text.Editable; 
import android.text.TextWatcher; 
import android.view.View; 
import android.widget.AdapterView; 
import android.widget.AdapterView.OnItemClickListener; 
import android.widget.EditText; 
import android.widget.ListView; 
import android.app.Activity; 
import android.content.Intent; 
import android.widget.ArrayAdapter; 

public class Search extends Activity { 


private ListView lv1; 
private EditText ed; 
private String lv_arr[] = { 
     "America", 
     "Busta", 
     "Cactus", 
     "Fire", 
     "Garden", 
     "Hollywood", 
     "King", 
     "Laboratorio", 
     "Malta", 
     "Nespola", 
     "Pera", 
     "Rosa", 
     "Sapone", 
     "Verano", 
}; 


private ArrayList<String> arr_sort= new ArrayList<String>(); 
int textlength=0; 


public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.search); 

    lv1=(ListView)findViewById(R.id.ListView1); 
    ed=(EditText)findViewById(R.id.EditText1); 

    lv1.setClickable(true); 
    lv1.setOnItemClickListener(new OnItemClickListener() { 
     public void onItemClick(AdapterView<?> parent, View view, int position, long id){ 

      Intent intent = new Intent(Search.this, Details.class); 

     startActivity(intent); 

       } 
     { 
     }}); 
+0

u는 당신의 onclick 핸들러가 의미 전화하지 않았 니? 또는 활동이 실행되지 않습니다. 또는 다음 활동에서 의도를 벗어난 데이터를 가져올 수 없습니까? 문제가 있습니까? 다음 활동의 코드 만 작성하고 검색 활동의 onclick 핸들러 만 게시하십시오. – Ronnie

+0

코드를 게시 할 수 없으며 올바르게 형식을 지정할 수 없습니다. 죄송합니다. – Valerio

+0

세부 정보 활동의 의도에 어떤 데이터도 전달하지 않습니다. 어떻게 표시됩니까? – Ronnie

답변

0

무엇이 putExtra()인지 알아 보려면 documentation을 읽어 보시기 바랍니다. Child이 무엇이 될지 모르지만, putExtra(String name, Child child) 방법이 없으므로이 방법을 잘못 사용하고 있습니다.

제안 된대로 데이터베이스에 데이터베이스를 사용할 수 있습니다.

기타 옵션 :

당신은 당신의 Child 클래스 selectedChild.getName()selectedChild.getImage()에서 두 문자열을 당기는 것으로 나타났습니다. 대신이 엑스트라로 두 개의 문자열을 전달하고 세부 활동에 텐트 밖으로 사람들을 뽑을 수 :

검색 활동 :

intent.putExtra("NAME", selectedChild.getName()); 
intent.putExtra("IMAGE", selectedChild.getImage()); 
startActivity(intent); 

세부 활동 :

String name = getIntent().getStringExtra("NAME"); 
String image = getIntent().getStringExtra("IMAGE"); 
((TextView) findViewById(R.id.Title)).setText(name); 
((ImageView) findViewById(R.id.imageView1)).setImageResource(getResources().getIdentifier(image, 
       "drawable", "com.test.com")); 
+0

검색 활동의'selectedChild'에서 오류가 발생했습니다. 빨간색 선이 나타납니다. 어떻게 문제를 해결할 수 있습니까? – Valerio

+0

아마도 내 대답을 신중하게 읽거나 오류를 게시하십시오. – f20k

+0

죄송하지만 나에게 도움이되지 않거나 더 잘 할 수 없다. 내 코드를 해봤습니까? 작동하는 프로젝트를 게시 할 수 있습니까? 고맙습니다. – Valerio

0

, 당신이 문제가 있다고 생각하는 부분을 직설적으로 지적하지 않았기 때문입니다.

그러나 두 가지 활동에서 동일한 데이터를 전달/사용하는 것과 관련하여 더 일반적으로 : 데이터를 읽고 쓰는 작은 데이터베이스를 사용하는 것이 현명한 생각 일 수 있습니다. 모든 활동에서 사용할 수 있으므로 항상 모든 버전과 최신 버전에 액세스 할 수 있습니다.

접근 방식을 사용하려면 startActivityForResult()을 통해 인 텐트를 시작할 때 인 텐트가 데이터를 전달할 수 있습니다.

+0

죄송합니다. 프로젝트를 살펴보면 문제가 가시적이라고 생각했습니다. 내 문제는 검색 활동 (언론 메뉴 버튼)에 있고 ListView의 항목을 클릭하면 해당 항목에 대한 정보없이 새 레이아웃이 제공됩니다. 세부 활동 및 xml 데이터 파일이 있습니다. 나는 intent.putExtra를 Search 액티비티에 넣어야하지만, 필자는 그것에 쓸 내용이 무엇인지 알지 못한다. – Valerio

관련 문제