【问题标题】:buttons in listview help?listview 帮助中的按钮?
【发布时间】:2011-08-10 23:14:35
【问题描述】:

我需要将按钮放入列表视图才能转到另一个视图。

我的按钮:AddTime = (Button) findViewById(R.id.Add_Time);

我尝试使用:

公共类 myclass 扩展 ListActivity 实现 OnClickListener {

我有 公共无效 onClick(查看 arg0){ }

我需要它去另一个我认为使用它的地方 Intent intent = new Intent(this, myclass.class); 开始活动(意图);

如何让这一切都在 listview 中工作?

【问题讨论】:

    标签: android


    【解决方案1】:

    使用这个

    package example.buttonWithList;
    
    import android.app.Activity;
    import android.app.AlertDialog;
    import android.app.ListActivity;
    import android.content.Context;
    import android.os.Bundle;
    import android.view.LayoutInflater;
    import android.view.View;
    import android.view.View.OnClickListener;
    import android.view.ViewGroup;
    import android.widget.BaseAdapter;
    import android.widget.Button;
    import android.widget.TextView;
    import android.widget.Toast;
    
    public class buttonWithList extends ListActivity {
        /** Called when the activity is first created. */
        String[] items={"azhar","j"};
        @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.main);
    
            setListAdapter(new bsAdapter(this));
    
    
        }
        public class bsAdapter extends BaseAdapter
        {
            Activity cntx;
            public bsAdapter(Activity context)
            {
                // TODO Auto-generated constructor stub
                this.cntx=context;
    
            }
    
            @Override
            public int getCount()
            {
                // TODO Auto-generated method stub
                return items.length;
            }
    
            @Override
            public Object getItem(int position)
            {
                // TODO Auto-generated method stub
                return items[position];
            }
    
            @Override
            public long getItemId(int position)
            {
                // TODO Auto-generated method stub
                return items.length;
            }
    
            @Override
            public View getView(final int position, View convertView, ViewGroup parent)
            {
                View row=null;
                // TODO Auto-generated method stub
                /*if(convertView==null)
                {
    
                }*/
                    LayoutInflater inflater=cntx.getLayoutInflater();
                    row=inflater.inflate(R.layout.row, null);
                    TextView tv=(TextView)row.findViewById(R.id.txtRow);
                    Button btn=(Button)row.findViewById(R.id.btnRow);
                    tv.setText(items[position]);
                    btn.setOnClickListener(new OnClickListener(){
    
                        @Override
                        public void onClick(View v) {
                            // TODO Auto-generated method stub
                            onListItemClick(this, this, position, null);
                        }
                        });
    
    
                return row;
            }
    
            protected void onListItemClick(OnClickListener onClickListener,
                    OnClickListener onClickListener2, int position, Object object) {
                // TODO Auto-generated method stub
                //Toast.makeText(this, items[position], 3000);
                System.out.println(items[position]);
            }
        }
    }
    

    【讨论】:

      【解决方案2】:

      main.xml

      <?xml version="1.0" encoding="utf-8"?>
      <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
          android:orientation="vertical" android:layout_width="fill_parent"
          android:layout_height="fill_parent">
          <TextView android:layout_width="fill_parent"
              android:layout_height="wrap_content" android:text="@string/hello" />
          <ListView android:id="@android:id/list" android:layout_width="wrap_content"
              android:layout_height="wrap_content"></ListView>
      </LinearLayout>
      

      【讨论】:

      • 编辑这篇文章可能是有意义的,以便在您发布的其他答案中添加代码片段,然后删除其他答案帖子。这会更符合 StackOverflow 的使用方式。
      【解决方案3】:

      行.xml

      <?xml version="1.0" encoding="utf-8"?>
      <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
          android:layout_width="fill_parent" android:layout_height="fill_parent">
          <TextView android:text="@+id/TextView01" android:id="@+id/txtRow"
              android:layout_width="wrap_content" android:layout_height="wrap_content"></TextView>
          <Button android:id="@+id/btnRow" android:layout_width="wrap_content"
              android:layout_height="wrap_content" android:text="Click "></Button>
      </LinearLayout>
      

      【讨论】:

        【解决方案4】:

        我建议您使用带有字符串的列表视图。制作一个按钮数组,当你点击一个按钮时,通过 onClick 获取数组中带有位置参数的按钮

        【讨论】:

          猜你喜欢
          • 2010-11-27
          • 1970-01-01
          • 1970-01-01
          • 2011-03-14
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多