Android那些冷门(邪门)的小知识
看代码:
View v = LayoutInflater.from(this).inflate(R.layout.popup_layout,null);
他的名字:利用布局逆向生成视图。
出现位置:在new 一个popupWindow之前。
数组适配器ArrayAdapter
引入:
他的名字:适配器Adapter
用途:创造规则
再详细一点:对数据显示样式的规则制订器
对于数组适配器来说,根布局必须只能有一个TextView
//参数一:环境
//参数二:布局资源索引,指的是每一项数据所呈现的样式
//参数三:数据源
//第二种构造方法:
//参数三:int textViewId ,这样的话,就避免了数组适配器跟布局必须是一个textView
//参数四:数据源
ArrayAdapter adapter = new ArrayAdapter(this,R.layout.xxxx,items) //items是一个数组
//以用dialog显示ArrayAdapter
AlertDialog.Builder builder = new AlertDialog.Builder(this)
.setTitle("请选择")
.setAdapter(adapter,new DialogInterface.OnClickListener(){
@Override
public void onClick(DialogInterface dialog,int which){ //which是索引
Toast.makeText(MainActivity.this,items[which],Toast.LENGTH_SHORT);
dialog.dismiss();
}
}) //这里可以加监听器
打开对话框对Activity生命周期的影响
最简单的对话框:AlertDialog、
AlertDialog.Builder builder = new AlertDialog.Builder(this);
结论一:普通对话框不会影响生命周期
所以,为了让他影响生命周期,我们把一个activity做成对话框模样!
在AndroidMainfest文件中配置activity标签
添加属性:android:theme="@style/Theme.AppCompat.Dialog"
如果这样,就可以反复触发生命周期的onPause和onResume。