android中的通货膨胀

android中的通货膨胀,android,Android,我已经看了很多关于安卓系统通货膨胀是什么的帖子,但我还是不明白。有人能详细描述一下它是什么以及我为什么需要它吗?他们说它用XML代码创建了一个对象,可以使用它或其他什么。我几乎了解其他一切,但这对我来说没有意义 基本上,为了使您的逻辑部分与UI部分不同,XML的概念应运而生 1-用XML创建UI非常简单和清晰 2-通过这种隔离,我们可以选择为陆地/纵向/小型/普通/大型模式创建不同的UI 在运行时,XML只是被解析并从中创建对象。在Android中,负责解释如下XML布局: <?xml v

我已经看了很多关于安卓系统通货膨胀是什么的帖子,但我还是不明白。有人能详细描述一下它是什么以及我为什么需要它吗?他们说它用XML代码创建了一个对象,可以使用它或其他什么。我几乎了解其他一切,但这对我来说没有意义

基本上,为了使您的逻辑部分与UI部分不同,XML的概念应运而生

1-用XML创建UI非常简单和清晰

2-通过这种隔离,我们可以选择为陆地/纵向/小型/普通/大型模式创建不同的UI

在运行时,XML只是被解析并从中创建对象。

在Android中,负责解释如下XML布局:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
  xmlns:android="http://schemas.android.com/apk/res/android"
  android:orientation="vertical"
  android:layout_width="match_parent"
  android:layout_height="match_parent"

  android:gravity="center"  
  >

  <WebView 
  android:layout_width="match_parent"
  android:layout_height="match_parent"
  android:id="@+id/ticketWeb"
/>

</RelativeLayout>


根据xml中的属性,它将“膨胀”或实例化xml布局中每个项目的java对象表示。因此,如果您有一个包含此xml文件的项目,inflator将创建java对象,您可以使用findViewById()检索这些对象。一旦检索到这些对象的引用,您就可以调用它们的各种方法来影响它们的不同方面。

在Android程序结构中,使用MVP ie,view处理presenter和design ie,即布局xml。因此,我们需要通过定义其他布局来定义xml的逻辑,这些布局通常用于维护UI操作,即改变UI行为。因此,我们可以轻松地将布局xml加载到相应的视图对象中进行操作

通过它,我们可以访问视图对象的相应UI。这是众所周知的。 考虑活动类

中的场景
class Activity1 extends Activity{
    setContentView(R.layout.Mainlayout);
    //here we are inflating the 
    //view   into objects actually 
    //its is defined in earlier version as 
    //setContentView(getInflater().inflater(R.layout.MainLayout)
    Button b=(Button)findViewById(R.id.button1);
}
但是如果你写

class Activity1 extends Activity{
    Button b=(Button)findViewById(R.id.button1);//if called then there will be no errror but form runtimeexception Because of absence of setContext()
}
因此,为了派生类中的每个ui,我们需要膨胀,但事实是android制造商已将膨胀纳入setContentView()、addview等,因此初学者无法理解膨胀,这很简单,但需要理解 如果button.xml只有button,我们可以简单地编写

Button b=(Button)getInflater().inflate(R.layout.button);

如果你不知道Android中的通货膨胀意味着什么,你怎么能理解Android用户界面…?@JoxTraex不发表评论,而是通过写一个答案让他理解。