2012-03-29 6 views
2

나는 일반적으로 데이터를 추가하고 항목을 삭제하는 여러 가지 일을 처리해야 기본적인 안드로이드 애플 리케이션을 개발하고, 배열을 사용해야합니다.도움 안드로이드 배열을 사용하여

내가 제품을 추가하는 것을 다루는 순간에 2 개의 편집 텍스트 필드와 4 개의 스피너를 사용하는 경우 사용자가 제품 추가를 클릭하면 2 개의 텍스트 필드와 4 개의 선택된 항목이 회 전자 및 이들 모두를 배열에 추가하십시오.

사용자가 보유한 모든 제품을 방금 표시하는 항목을 삭제하면 삭제할 항목을 선택한 다음 삭제 버튼을 클릭합니다.

배열을 만드는 데 도움이 필요합니다. 배열을 처리하는 다른 클래스를 사용하는 것이 좋습니다. 즉, 응용 프로그램이 실행될 때 배열을 만들고 제품을 추가 및 삭제하는 방법이 있어야합니다.

나는 그냥 다음 유지해야합니다 배열이 배열을 가능 설정하는 것입니다 방법을 알고 싶어요 :

product name (edit tect field) 
category (edit text field) 
price (spinner) 
day (spinner) 
month (spinner) 
year (spinner) 
+0

배열 대신 목록이 표시됩니까? – mitchnufc

+0

목록을 사용할 수 있습니다. 예 – mitchnufc

답변

2

어떻게 ... 빠른 윤곽이 약

public class ProductActivity extends Activity { 

private ArrayList<Product> _products = new ArrayList<Product>(); 

private EditText _nameEdtx; 
// and other widgets 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 

    // attach activity to layout and widgets in layout 
} 

// assuming your button has onClick="handleAddButtonClicked" 
public void handleAddButtonClicked(View vw) { 
    _products.add(new Product(_nameEdtx.getText().toString())); 
} 

class Product { 
    String _productName; 
    // ... and so on 
    public Product(String productName) { 
     _productName = productName; 
     // and so on, with other member variables 
    } 
} 
} 
1

한 가지 방법은 너무

import android.widget.EditText; 
import android.widget.Spinner; 

//declare class 

public class MyClass 
{ 
    public EditText ProductName; 
    public EditText Category; 
    public Spinner Price; 
    public Spinner Day; 
    public Spinner Month; 
    public Spinner Year; 
} 

//now a list of them could look like 
List<MyClass> myCollection = new ArrayList<MyClass>(); 

//iterating 
for (MyClass item : myCollection) 
{ 
    Log.d("DEBUG", "the current item ProductName is" + item.ProductName); 
} 

내가의 전체 아이디어를 모르는처럼 속성과 항목을 가진 개체를 만드는 것입니다 귀하의 애플 리케이션 그래서 어쩌면 합법적 인 이유가 이런 식으로 일을하지만 그것은 조금 이상하게 보입니다. 나는 당신이 Product를 표현하기 위해 원시적 인 obects로부터 클래스를 생성한다고 생각했을 것이다.

그런 다음 목록보기 (또는이 줄에있는 항목)에 바인딩하고 각 행에 대한보기를 확장합니다.