实施步骤详解第一步:对activity_main.xml文件进行修改,即进行页面布局@H_301_5@这一共分为四个部分,一个Edittext,两个button,一个Spinner,并对他们的位置大小和颜色等样式进行修改。具体代码如下:
<?xml version="1.0" enCoding="utf-8"?><linearLayout xmlns:androID="http://schemas.androID.com/apk/res/androID" xmlns:app="http://schemas.androID.com/apk/res-auto" xmlns:tools="http://schemas.androID.com/tools" androID:layout_wIDth="match_parent" androID:layout_height="match_parent" tools:context=".MainActivity" androID:orIEntation="vertical"> <EditText androID:ID="@+ID/EditInfo" androID:layout_wIDth="fill_parent" androID:layout_height="100dp" androID:layout_margintop="30dp" androID:layout_marginleft="20dp" androID:layout_marginRight="20dp" androID:paddingleft="20dp" androID:textSize="50sp" androID:hint="@string/editInfo" /> <button androID:ID="@+ID/add_proj" androID:layout_wIDth="fill_parent" androID:layout_height="wrap_content" androID:layout_marginleft="20dp" androID:layout_margintop="30dp" androID:layout_marginRight="20dp" androID:textSize="30sp" androID:background="@drawable/btn_shape" androID:text="@string/add" /> <button androID:ID="@+ID/delete_proj" androID:layout_margintop="30dp" androID:layout_marginleft="20dp" androID:layout_marginRight="20dp" androID:background="@drawable/btn_shape" androID:layout_wIDth="fill_parent" androID:layout_height="wrap_content" androID:textSize="30sp" androID:text="@string/delete"/> <Spinner androID:ID="@+ID/spinner_vIEw" androID:layout_margintop="30dp" androID:layout_marginleft="20dp" androID:layout_marginRight="20dp" androID:layout_wIDth="fill_parent" androID:layout_height="50dp"/></linearLayout>
第二部:将代码的样式进行修改(先做出样式再完成功能)@H_301_5@因为演示所以只对button按钮的样式进行了稍微的修改;因为各个组件的样式修改方法都大同小异。具体过程是;1、在res-drawable目录上右击,选择New,选择Drawable Resource file
2、在Root element 选项下选择shape,在file name后填写文件名称
最后再文件中输入以下代码:
<?xml version="1.0" enCoding="utf-8"?><shape xmlns:androID="http://schemas.androID.com/apk/res/androID" androID:shape="rectangle"> <solID androID:color="#C3C3C3"/> <corners androID:radius="10dp"/> <stroke androID:color="#000000" androID:wIDth="3dp"/></shape>
第三步:设置静态数据(因为第一次打开有点数据在spinner里总是好看的)@H_301_5@选择res目录下的values下的strings.xml文件点击打开;在resource根节点下创建一个string-array子节点具体代码如下
<resources> <string-array name="sprinner"> <item>吃饭</item> <item>睡觉</item> <item>打豆豆</item> </string-array></resources>
第四步(最重要的一步)@H_301_5@找到MainActivity文件然后打开,输入以下代码(因为代码中每一步都写了清晰的注释所以直接上代码)!import androIDx.appcompat.app.AppCompatActivity;import androID.os.Bundle;import androID.vIEw.VIEw;import androID.Widget.ArrayAdapter;import androID.Widget.button;import androID.Widget.EditText;import androID.Widget.Spinner;import java.util.ArrayList;public class MainActivity extends AppCompatActivity { /*1先对组件进行声明*/ EditText editText; button add; button delete; Spinner spinner; ArrayList<String> List = new ArrayList<>(); ArrayAdapter<String> adapter; @OverrIDe protected voID onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentVIEw(R.layout.activity_main); /*2通过ID对组件进行后端绑定*/ editText=findVIEwByID(R.ID.EditInfo); add=findVIEwByID(R.ID.add_proj); delete=findVIEwByID(R.ID.delete_proj); spinner=findVIEwByID(R.ID.spinner_vIEw); /*4获取Strings.xml文件中构建的数组数据*/ String[] value = getResources().getStringArray(R.array.action);/*因为我们的原始数据存储在string.xml文件中,所以getResource然后getStringArray;然后通过数组的ID获取*/ /*5用for循环将数组数据存储到List中*/ for (int i=0 ;i<value.length;i++) { List.add(value[i]); } /*6sadapter配置数据以及配置下拉样式并且pinner绑定适配器*/ adapter = new ArrayAdapter<String>(this,androID.R.layout.simple_spinner_item,List); adapter.setDropDownVIEwResource(androID.R.layout.simple_spinner_dropdown_item); spinner.setAdapter(adapter); spinner.setPrompt("项目总览"); /*7添加按钮监听器*/ add.setonClickListener(new VIEw.OnClickListener() { @OverrIDe public voID onClick(VIEw v) { adapter.add(editText.getText().toString()); setTitle("当前项目有"+String.valueOf(List.size())+"个"); } }); delete.setonClickListener(new VIEw.OnClickListener() { @OverrIDe public voID onClick(VIEw v) { adapter.remove(editText.getText().toString()); setTitle("当前项目有"+String.valueOf(List.size())+"个"); } }); }}
@H_301_5@注意:1、在粘贴的时候不要把你原本package的名字给粘贴没了;2、如果你是自己手敲代码的话注意import的包的类型如果出现问题就很烦结语@H_301_5@我是个刚学androID的计算机学生,在学习过程中发现androID在网上的资源并不是很好找,所以希望通过自己的努力能让更多对androID感兴趣的人抛砖引玉,如果有意见或者想和我交流可以加我的微信,如果觉得写得不错或者对你有一点点帮助,希望可以点个赞让我小小的开心一下。最后,程序员最牛B!!!加油各位。
总结
以上是内存溢出为你收集整理的Android借助于Spinner可以动态添加删除项目全部内容,希望文章能够帮你解决Android借助于Spinner可以动态添加删除项目所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)