android开发问题,已经在layout文件下main.xml文件中进行了各个view组件的配置,如何

android开发问题,已经在layout文件下的main.xml文件中进行了各个view组件的配置,如何在activity程序中对它们进行控制啊,以及如何取得它们组件的对象及方法,其中我也看了一些基本的组件在activity程序中使用它们的方法,比如一些基本的组件如:TextView、EditvText、button等等,就是我想通过activity程序控制已经在main.xml文件中定义好了的组件进行控制,就是如何在activity程序中动态的进行控制或者配置,以及控制那些组件的一些方法,说的有点乱,,希望谅解,还刚入门。希望知道的大哥大姐好好的帮我梳理一下这块的知识点,感激不尽!真心感谢!

可以使用LayoutParams,LayoutParams相当于一个Layout的信息包,它封装了Layout的位置、高、宽等信息。假设在屏幕上一块区域是由一个Layout占领的,如果将一个View添加到一个Layout中,最好告诉Layout用户期望的布局方式,也就是将一个认可的layoutParams传递进去。
可以这样去形容LayoutParams,在象棋的棋盘上,每个棋子都占据一个位置,也就是每个棋子都有一个位置的信息,如这个棋子在4行4列,这里的“4行4列”就是棋子的LayoutParams。

但LayoutParams类也只是简单的描述了宽高,宽和高都可以设置成三种值:
1,一个确定的值;
2,FILL_PARENT,即填满(和父容器一样大小);
3,WRAP_CONTENT,即包裹住组件就好。
温馨提示:内容为网友见解,仅供参考
第1个回答  2013-10-11
比如说,你在布局文件中定义了一个id为pname_edittext的文本框,你在activity中这样去把它找出来,并且控制它:
可以在activity的onCreate方法中去这样做:
EditText pName_EditText = (EditText) findViewById(R.id.pname_edittext);
这里为什么要强制转型呢?因为findViewById返回值的View类型,EditText已经被它向上转型了,所以,在明确知道一个组件的真实类型,使用强制转型时安全的。
findViewById方法是Activity中的方法,当然,比如LinearLayout之类的组件也有这个方法。

至于你已经获取到组件了引用了。那么你只要掌握组件的方法属性,这些你得去学习。

那么按钮呢?获取按钮的引用也是用findViewById方法:
Button okBtn = (Button) findViewById(R.id.ok_button);
给按钮设置一个点击事件监听器呢?

1、先建立一个监听器:
OnClickListener mListener = new OnClickListener() {
public void onClick(View v) {
// 这里处理点击事件

}
};
2、绑定监听器到按钮:
okBtn.setOnClickListener(mListener);
那么,这样做,按钮的点击事件就会被mListener监听器所捕捉到,在它里面去处理就行了。

一般地,在一个Activity中,不会写很多点击事件监听器,而是尽可能让更多的组件一起共用一个监听器。平常,更多习惯将Activity实现OnClickListener接口,从而让Activity可以捕捉按钮的点击事件。其他类型的监听器也一样。都可以这么做。

public class MainActivity extends Activity implements OnClickListener {

public void onCreate(Bundle saveInstanceState) {

setContentView(R.layout.activity_main); // 如果你把这句去掉,后果不堪设想

// 看看现在怎么去监听按钮的点击事件

findViewById(R.id.ok_button).setOnClickListener(this); // 看这句。

}

public void onClick(View v) {

// Activity 已经实现了OnClickListener接口了哦,可以处理组件的点击事件了。

}

}

给你说就说这么多吧,也许你已经知道了的。

多做开发。纸上谈兵没有用。
第2个回答  2013-10-11
1楼回答的比较详细了

安卓的资源是通过R文件来管理的,你要找控件啊资源啊什么的都可以通过R文件来找

android studio在编辑layout文件夹下的xml文件时怎样出建议项?_百度知 ...
1、双击打开Android studio之后选择start a new Android Studio project 2、然后填上项目名和包名,然后点击Next 3、然后选择创建项目最小的sdk版本,然后点击Next 4、然后选择创建的页面,这里选择空白页面(如果选择其他页面的话可能就会出现有两个护着更多的XML),然后点击next 5、最后是项目的入口类名...

Android layout里面怎么新建多个子文件夹
业余编程狗来答一发,在新建应用程序的时候,会在layout文件夹下自动生成一个布局文件 叫 main.xml 。而你在新建项目的时候Eclipse也根据你的应用程序名 生成一个布局文件叫 activity_hello_android.xml 和main.xml 一样的,只不过换个名字而已,你还可以自己新建几个布局文件 ...

android开发中 关于R.id的问题
代码中setContentView(R.layout.main)作用是设置界面布局,并设置了该Activity的关联视图集根;Button button=(Button)findViewById(R.id.button);从视图集根遍历找到id为button的视图,所以,我们先要进行布局的安排。在res\/layout文件夹下创建main.xml,代码如下,当然随便布局:<LinearLayout xmlns:androi...

安卓软件开发中的xml是做什么的,要如何使用
XML文件通常被用于定义界面的布局,包括控件的位置、大小和样式等。在Android开发中,XML文件通常位于res\/layout目录下,并以.xml为后缀。每个XML文件对应一个特定的布局,而多个布局可以被多个活动(Activities)或片段(Fragments)使用。通过将XML文件与Java或Kotlin代码关联,开发者可以动态地加载布局,从而...

新建Android项目layout文件下的两个XML文件的用法
1.现在新建一个Android工程,在Layout文件夹里面会新建两个XML的文件,两个分别是activity_main.xml和fragment_main.xml,2.在默认情况下,试图运行一下方法,总是会出错,3.解决方法,首先,把onCreate()方法中的activity_main换成fragment_main,然后,把下面的if()语句注释掉,再尝试运行,就没有...

android新建了res\/layout-land\/main.xml文件,但横屏时候程序执行的还是...
对于android:ConfigChanges:在一个Activity中可以指定参数android:ConfigChanges,用于捕获手机状态的改变。在Activity中添加了android:configChanges属性,目的是当所指定属性(Configuration Changes)发生改变时,通知程序调用onConfigurationChanged()函数。仅仅是通知Activity而已,应该不会自动变更XML --- 补充一点(...

打开Android Studio里面layout下的activity_main.xml无屏幕预览_百度知 ...
需要打开preview.一般右侧工具栏有两个按钮 一个是preview 一个是gradle.点击右侧栏preview就行了。如果右侧没有,就在工具栏中找到window然后在window中找到preview打开

eclipse里layout的activity_main.xml 无法编辑界面
提示了The SDK layoutlib version is not supported不要说什么修改版本 绿色机器人那里只能勾选26的版本吧版本改小一点,23,22都可以了!

layoutdescription.xml文件是什么
描述布局文件的元数据文件。Android开发中,每个布局文件都会对应一个layoutdescriptionxml文件。是用于描述布局文件的元数据文件。包含了布局文件中各个视图的位置、大小、属性等信息。

...文件夹 xml 文件太多了,可以在layout文件夹下面子文件夹 吗?_百度...
这个问题我以前也曾经问过,最后的答案是不行的,android目前不支持这种方法,你可以向官方反映这个问题,希望新版本的android可以支持。

相似回答