类扩展ArrayAdapter时将Activity移动到另一个Activity

时间:2012-05-02 19:22:30

标签: android

当我点击edit_remainder按钮时,我想将我的活动移动到另一个活动。

但是在类扩展ArrayAdapter的地方我不明白如何移动到另一个Activity。

请帮我一个Intent类的例子。

public class mylist extends ArrayAdapter<String> implements OnClickListener 
{

  private final Context context;
  private final String[] values;
  Button edit_remainder;

  public mylist(Context context, String[] values) {
    super(context, R.layout.some, values);
    this.context = context;
    this.values = values;
  }

  @Override
  public View getView(int position, View convertView, ViewGroup parent) {
    LayoutInflater inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
    View rowView = inflater.inflate(R.layout.buttonadd, parent, false);
    edit_remeinder=(Button) rowView.findViewById(R.id.btnEdit);
    edit_remeinder.setOnClickListener(this);
    return rowView;
  }

  public void onClick(View v) {
    Toast.makeText(getContext(), "hi", 1000).show();
    // please enter moving code here
  }
}

4 个答案:

答案 0 :(得分:0)

如果我理解正确,您希望在用户点击列表项时将控制转移到另一个活动。您需要发出意图

这是一个教程:http://www.vogella.com/articles/AndroidIntent/article.html

答案 1 :(得分:0)

在这里发布一个明确的意图,如:

Intent i=new Intent(context,anotheractivity.class);
startActivity(i);

这里的上下文可以是应用程序上下文。

答案 2 :(得分:0)

您是否创建了自己的适配器(mylist)? 如果是,则通过调用mylist适配器传递主类中的intent。

答案 3 :(得分:0)

这里我创建了listview,但您可以尝试自己的应用程序。 传递主活动中的意图而不是您自己的适配器。

mainActivity.java

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

    lview = (ListView) findViewById(R.id.listView2);  
    lviewAdapter = new ListViewAdapter(this, month, number);  //here ListViewAdapter is my own adapter

    System.out.println("adapter => "+lviewAdapter.getCount());  

    lview.setAdapter(lviewAdapter);  

    lview.setOnItemClickListener(this);  
}  

public void onItemClick(AdapterView<?> arg0, View arg1, int position, long id) {  
    // TODO Auto-generated method stub  
    Toast.makeText(this,"Title => "+month[position]+"=> n Description"+number[position], Toast.LENGTH_SHORT).show();  

     // here your intent code

}  
}  

请在主要活动中加入此onclick方法,然后重试。

public void onClick(View v) {
Toast.makeText(getContext(), "hi", 1000).show();
// please enter moving code here

}