当前位置:首页 » 安卓系统 » android弹出view

android弹出view

发布时间: 2024-05-11 08:35:09

① android 如何动态布局自定义view,不用XML.

可以直接new View来得到View对象来实现代码布局。以下为示例代码:
1.绝对布局
AbsoluteLayout abslayout=new AbsoluteLayout (this);
setContentView(abslayout);
Button btn1 = new Button(this);
btn1.setText(”this is a button”);
btn1.setId(1);
AbsoluteLayout.LayoutParams lp1 =
new AbsoluteLayout.LayoutParams(
ViewGroup.LayoutParams.WRAP_CONTENT,
ViewGroup.LayoutParams.WRAP_CONTENT,
0,100);
abslayout.addView(btn1, lp1);

2.相对布局
RelativeLayout relativeLayout = new RelativeLayout(this);
setContentView(relativeLayout);
AbsoluteLayout abslayout=new AbsoluteLayout (this);
RelativeLayout.LayoutParams lp1 = new RelativeLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT);
lp1.addRule(RelativeLayout.ALIGN_PARENT_TOP);
lp1.addRule(RelativeLayout.CENTER_HORIZONTAL, RelativeLayout.TRUE);
relativeLayout.addView(abslayout ,lp1);

3.线性布局
LinearLayout ll = new LinearLayout(this);
EditText et = new EditText();
ll.addView(et);
//动态添加布局的方法1. LinearLayout ll = (LinearLayout)this.getLayoutInflater().inflate(R.layout.main1,null); setContentView(ll); LinearLayout ll2 = (LinearLayout)this.getLayoutInflater().inflate(R.layout.main2,ll); //这样 main2 作为 main1的子布局 加到了 main1的 根节点下
//动态添加布局的方法2 addView. LinearLayout ll = (LinearLayout)this.getLayoutInflater().inflate(R.layout.main1,null); setContentView(ll); LinearLayout ll2 = (LinearLayout)this.getLayoutInflater().inflate(R.layout.main2,null); ll.addView(ll2);

② android 自定义View在弹出的软键盘之上,怎么做

通过singleTouchView.getViewTreeObserver().addOnGlobalLayoutListener(
new ViewTreeObserver.OnGlobalLayoutListener() {...}计算键盘高度,有了键盘高度,就可以设置那一行的位置了.

③ 关于Android动态布局添加和删除View的问题……

java">{

privateLinearLayoutlayout;
privateTextViewtextView;
@Override
publicvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
layout=newLinearLayout(this);//变量layout是该Activity的成员变量(privateLinearLayoutlayout)
layout.setOrientation(LinearLayout.VERTICAL);//设置layout布局方向为垂直
setContentView(layout);

//接下来向layout中添加TextView
textView=newTextView(this);
textView.setText("ThisIsaTextView");
layout.addView(textView);
}
@Override
protectedvoidonResume(){
//TODOAuto-generatedmethodstub
layout.removeView(textView);
super.onResume();
}

}

但是Activity在启动的时候调用onCreate()之后也会调用onResume()方法,所以进入程序也看不到textview了

④ Android中如何让一个EditView被点击后出现搜索框,搜索框已经实现

Android有自带的一个控件AutoCompleteTextView

具体用法如下:

main.xml代码如下:

<?xmlversion="1.0"encoding="utf-8"?>
<LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical">

<AutoCompleteTextView
android:id="@+id/autoCompleteTextView1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:completionHint="请选择你喜欢的歌曲"
android:completionThreshold="1"
android:dropDownHorizontalOffset="20dp"
android:ems="10"
android:text="AutoCompleteTextView">

<requestFocus/>
</AutoCompleteTextView>

</LinearLayout>

java代码为:

importandroid.app.Activity;
importandroid.graphics.Bitmap;
importandroid.graphics.BitmapFactory;
importandroid.graphics.drawable.BitmapDrawable;
importandroid.os.Bundle;
importandroid.view.MotionEvent;
importandroid.view.View;
importandroid.view.View.OnClickListener;
importandroid.view.View.OnTouchListener;
importandroid.widget.ArrayAdapter;
importandroid.widget.AutoCompleteTextView;
importandroid.widget.Button;
importandroid.widget.ImageView;

{

//定义字符串数组作为提示的文本
String[]books=newString[]{"rollen","rollenholt","rollenren","roll"};

@Override
protectedvoidonCreate(BundlesavedInstanceState){
//TODOAuto-generatedmethodstub
super.onCreate(savedInstanceState);
setContentView(R.layout.main);

//创建一个ArrayAdapter封装数组
ArrayAdapter<String>av=newArrayAdapter<String>(this,
android.R.layout.simple_dropdown_item_1line,books);
AutoCompleteTextViewauto=(AutoCompleteTextView)findViewById(R.id.autoCompleteTextView1);
auto.setAdapter(av);
}
}

⑤ vivo手机的问题,通知栏里出现Android系统WebView什么意思

手机自带浏览器更新中,点进去取消更新,一般可以解决。

⑥ android dialog弹出软键盘怎样不让view往上推

可以在主配置文件里面,设置一下这个activity的adjust属性,有不自动调整的属性的

⑦ 如何在Android中打开一个窗口

1、 首先在默认工程中新建一个Activity

2、添加动作属性
在activity_main.xml文件中添加动作动作属性
android:onClick="OpenNewWindow"

OpenNewWindow是自己取的名字
3、添加动作函数
在MainActivity.java文件中添加:
import android.view.View;
然后在添加:
public void OpenNewWindow(View view){
//打开一个新的窗口

Intent intent = new Intent(this,MainActivity2.class);
startActivity(intent);
Toast.makeText(this, "Toast", Toast.LENGTH_SHORT).show();
}
其中:
Intent intent = new Intent(this,MainActivity2.class);
是定义一个意图,MainActivity2.class是要打开的窗口
startActivity(intent);
是激活这个意图
Toast.makeText(this, "Toast", Toast.LENGTH_SHORT).show();
作为调试的时候看的,可以删除,作用是在屏幕是显示有没有启动这个动作。

请注意,为了让系统能够将这个方法与在android:onClick属性中提供的方法名字匹配,它们的名字必须一致,特别是,这个方法必须满足以下条件:
公共的
没有返回值
有一个唯一的视图(View)参数

使用上述方法添加Activity,在调试的时候需要用Andriod4,在此说明另外一种添加Activity的方法。
双击Manifest.xml文件,选中Application选项卡,向下拉,找到Application Nodes,点击添加,跳出以下对话框:

选择Activity选项,点击OK。
然后选中新建的Activity,点击右边Name,在弹出的对话框中填入名字就可以了。然后,添加xml文件,名字任意取,当然,最好是同名文件,以后好找,填写相应文档既可。
Xml文件:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".MainActivity3" >

<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/AText1" />

</RelativeLayout>
其中RelativeLayout说明是相对布局。

热点内容
python正则compile 发布:2024-11-27 05:19:05 浏览:28
数据库系统概论第四版ppt 发布:2024-11-27 04:59:52 浏览:412
开通了免密为什么还要密码 发布:2024-11-27 04:17:42 浏览:15
excel导入数据库java 发布:2024-11-27 04:16:21 浏览:624
ps不能存储bpm 发布:2024-11-27 04:04:12 浏览:613
jquery代码加密 发布:2024-11-27 03:54:51 浏览:594
数字密码人格是什么原理 发布:2024-11-27 03:46:34 浏览:428
华为怎么看手机的配置 发布:2024-11-27 03:27:42 浏览:381
php函数作用域 发布:2024-11-27 03:26:11 浏览:177
pythonasteval 发布:2024-11-27 03:21:14 浏览:563