android - 我无法解析以下几行 android(/java) 代码

标签 android

我正在按照自己的方式工作,和我的一个 friend 一起扔了几本关于 Android 编程的书(所以我想你会称之为家庭作业?)我们已经多次遇到类似以下示例的代码段而且我从来没有完全理解这些分割,只是盲目地使用了它。有人有时间把这个例子分成几行,而不是用“点”运算符连在一起吗?我已经尝试了很多次,我把头发拉出来盖在上面,我已经够大了,头发已经不多了。

View v = getActivity().getLayoutInflater()
    .inflate(R.layout.some_dialog,  null);


return new AlertDialog.Builder(getActivity())
    .setView(v)
    .setTitle(R.string.some_dumb_title)
    .setPositiveButton(android.R.string.ok, null)   // null can be On Click Listener
    .create();

可能是指向某些网页的指针,这些网页使用简单的代码行来完成工作。我知道它的编写方式更有效,但将其布置为单独的行会使它更容易理解,更重要的是,更容易调试。

最佳答案

看起来它正在使用 builder pattern创建一个 AlertDialog。如果我们follow what the documentation说到这里,我们得出以下结论:

View v = getActivity().getLayoutInflater()
.inflate(R.layout.some_dialog,  null);

这大致转化为:

  • 获取当前实例或父类(super class)的 Activity
  • 通过该 Activity ,获取其布局 inflater
  • 使用该布局充气器,使用参数 R.layout.some_dialognull 对其进行充气。

return new AlertDialog.Builder(getActivity())
.setView(v)
.setTitle(R.string.some_dumb_title)
.setPositiveButton(android.R.string.ok, null)   // null can be On Click Listener
.create();

这大致转化为:

  • 获取一个新的构建器,传递当前实例或父类(super class)的 Activity
  • 然后,使用该构建器设置 View
  • 使用相同的构建器,将标题设置为 R.string.some_dumb_title
  • 使用相同的构建器,使用参数 android.R.string.oknull 设置一个正向按钮
  • 使用相同的构建器,调用create,从而创建AlertDialog

关于android - 我无法解析以下几行 android(/java) 代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20207976/

相关文章:

Android:监控应用程序的网络流量,使用类似于 F12->Network on Web 的工具

android - 改造链接可观察对象

android - Flutter Webview 抛出编译错误-ThreadedInputConnectionProxyAdapterView location : class InputAwareWebView

java - Android - 找不到合适的构造函数

android - C/Renderscript/Neon Intrinsics 之间的电池电量消耗 -- 视频过滤器(边缘检测)APK

android - android studio 2.1 的 .apk 文件在哪里?就像在 "bin"文件夹中的 eclipse

android - APK 大小随着 appcompat-v7 :23. 4.0 急剧增加

java - 在 Android 中将消息保存到收件箱?

java - 如何使 Android Google 登录按钮仅登录而不使用 FirebaseAuth 注册?

android - 仅用两根手指触摸