Android開發(fā)中button按鈕的使用及動態(tài)添加組件方法示例
本文實例講述了Android開發(fā)中button按鈕的使用及動態(tài)添加組件方法。分享給大家供大家參考,具體如下:
MainActivity.java
package com.example.lab2;
import android.os.Bundle;
import android.app.Activity;
import android.content.Context;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.View.OnLongClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ImageButton;
import android.widget.LinearLayout;
import android.widget.TextView;
import android.widget.Toast;
public class MainActivity extends Activity {
EditText et1; //輸入用戶名的EditText
EditText et2; //輸入密碼的EditText
ImageButton ib; //聲明ImageButton
Button btn; //重置按鈕
Context context;
LinearLayout mLinearLayout; //這個LineatLayout用于放置添加的組件
TextView tv;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
init(); //初始化
//單擊imagebutton
OnClickListener listener = new OnClickListener() {
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
if(et1.getText().toString().equals("android") && et2.getText().toString().equals("2015"))
{
ib.setImageResource(R.drawable.state1); //設(shè)置改變原來的圖片
et1.setVisibility(View.GONE);
et2.setVisibility(View.GONE);
}
else //輸入賬號或者密碼錯誤的時候
{
et2.setText("");
et2.setHint("賬號或密碼錯誤");
}
}
};
ib.setOnClickListener(listener);
//長按imagebutton
OnLongClickListener longlistener = new OnLongClickListener() {
@Override
public boolean onLongClick(View arg0) {
// TODO Auto-generated method stub
Toast.makeText(context, "動態(tài)添加了TextView了哦", Toast.LENGTH_SHORT);
tv = new TextView(context);
tv.setText("這里是動態(tài)添加的TextView");
mLinearLayout.addView(tv); //添加組件
return false;
}
};
ib.setOnLongClickListener(longlistener);
//重置
OnClickListener listener2 = new OnClickListener() {
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
ib.setImageResource(R.drawable.state2);
et1.setHint("請輸入用戶名");
et2.setHint("請輸入密碼");
et1.setText("");
et2.setText("");
et2.requestFocus(); //將光標定位EditText
et1.setVisibility(View.VISIBLE);
et2.setVisibility(View.VISIBLE);
mLinearLayout.removeAllViews(); //點擊重置按鈕的時候,也將原來添加的組件一起清除
}
};
btn.setOnClickListener(listener2);
}
//初始化函數(shù)
public void init()
{
et1 = (EditText)findViewById(R.id.et_username);
et2 = (EditText)findViewById(R.id.et_passward);
ib = (ImageButton)findViewById(R.id.ib);
btn = (Button)findViewById(R.id.btn);
context = MainActivity.this;
mLinearLayout = (LinearLayout)findViewById(R.id.linearLayout);
}
}
xml:
<LinearLayout 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:orientation="vertical"
>
<EditText
android:id="@+id/et_username"
android:hint="請輸入用戶名"
android:layout_width="fill_parent"
android:layout_height="wrap_content"/>
<EditText
android:id="@+id/et_passward"
android:hint="請輸入密碼"
android:inputType="textPassword"
android:layout_width="fill_parent"
android:layout_height="wrap_content"/>
<ImageButton
android:id="@+id/ib"
android:src="@drawable/state2"
android:layout_width="50dp"
android:layout_height="50dp"/>
<Button
android:id="@+id/btn"
android:text="重置"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
<LinearLayout
android:id="@+id/linearLayout"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical">
</LinearLayout>
</LinearLayout>
更多關(guān)于Android相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Android基本組件用法總結(jié)》、《Android開發(fā)入門與進階教程》、《Android布局layout技巧總結(jié)》、《Android視圖View技巧總結(jié)》、《Android編程之a(chǎn)ctivity操作技巧總結(jié)》、《Android資源操作技巧匯總》及《Android控件用法總結(jié)》
希望本文所述對大家Android程序設(shè)計有所幫助。
相關(guān)文章
android使用ViewPager組件實現(xiàn)app引導(dǎo)查看頁面
這篇文章主要為大家詳細介紹了android使用ViewPager組件實現(xiàn)app引導(dǎo)查看頁面,具有一定的參考價值,感興趣的小伙伴們可以參考一下2018-07-07
React Native 實現(xiàn)熱更新并自動簽名打包功能
這篇文章主要介紹了React Native 實現(xiàn)熱更新并自動簽名打包,本文通過實例代碼給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-04-04
Android基于AlarmManager實現(xiàn)用戶在線心跳功能示例
這篇文章主要介紹了Android基于AlarmManager實現(xiàn)用戶在線心跳功能,結(jié)合檢測用戶在線功能實例形式分析了AlarmManager全局定時器的功能、使用方法及相關(guān)注意事項,需要的朋友可以參考下2017-10-10
Android布局控件DrawerLayout實現(xiàn)完美側(cè)滑效果
這篇文章主要為大家詳細介紹了Android布局控件DrawerLayout實現(xiàn)完美側(cè)滑效果,具有一定的參考價值,感興趣的小伙伴們可以參考一下2018-08-08
基于RecyclerView實現(xiàn)橫向GridView效果
這篇文章主要為大家詳細介紹了基于RecyclerView實現(xiàn)橫向GridView效果,具有一定的參考價值,感興趣的小伙伴們可以參考一下2018-07-07

