android注冊界面
❶ android新創建Activity是否需要在Manifest文件中注冊,如何進行注冊
必須要進行注冊,沒有注冊那個activity不能使用,運行工程是會報錯.
假設Activity名字為MyActivity注冊代碼如下:
.MyActivity前面的為你activity所在的包名,注冊放在你的主activity標簽的下面就可以了.
<activity android:name="com.bwie.test.MyActivity"></activity>
❷ android編程如何創建一個能從系統資料庫選擇頭像的用戶注冊界面
在Eclipse中創建一個新的Android項目。我們將項目命名為MT-List,起始活動命名為TutListActivity。這個Activity必須繼承ListActivity類,它是一個特殊的Activity類,用於幫助管理ListView控制項。http://www.ijiami.cn/newsInfo?id=291&v=3
實際上,這一步要做的很少。一個由重復項組成的ListView控制項,每一項都有相同的布局(一項一個模板)。我們想要顯示一個文章標題列表。每個標題都是ListView中的一項。因此,每個列表項的模板只需要一個TextView控制項。在你的項目中添加一個叫做list_item.xml布局資源文件,它描述了列表中的每一項的模板布局。
ListView控制項設計用於從數據源載入數據。可以使用適配器從資料庫,數組或其它數據源讀取數據。在這個程序中我們使用數組作為數據源。今後,你可以將數組替換為某些實時數據源。在你的項目中創建兩個字元串數組(你可以將他們添加到strings.xml或者一個分離的arrays.xml文件,隨你願意)。將一個數組取名為「tut_titles」,另一個名為「tut_links」。用網站上的有效的標題和URL填充這兩個數組。
現在程序已經有數據了,現在來顯示它們。回到TutListActivity.java,修改onCreate()方法,使用setListAdapter()方法來載入數據。和常規的活動不一樣,對於整個活動就僅僅只是一個ListView的情況,ListActivity不需要使用setContentView()。
❸ android編程 創建用戶從系統資料庫選擇頭像的注冊界面
一個由重復項組成的ListView控制項,每一項都有相同的布局(一項一個模板)。我們想要顯示一個文章標題列表。每個標題都是ListView中的一項。因此,每個列表項的模板只需要一個TextView控制項。在你的項目中添加一個叫做list_item.xml布局資源文件,它描述了列表中的每一項的模板布局。
ListView控制項設計用於從數據源載入數據。可以使用適配器從資料庫,數組或其它數據源讀取數據。在這個程序中我們使用數組作為數據源。今後,你可以將數組替換為某些實時數據源。在你的項目中創建兩個字元串數組(你可以將他們添加到strings.xml或者一個分離的arrays.xml文件,隨你願意)。將一個數組取名為「tut_titles」,另一個名為「tut_links」。用網站上的有效的標題和URL填充這兩個數組。http://www.ijiami.cn/newsInfo?id=291&v=3
現在程序已經有數據了,現在來顯示它們。回到TutListActivity.java,修改onCreate()方法,使用setListAdapter()方法來載入數據。和常規的活動不一樣,對於整個活動就僅僅只是一個ListView的情況,ListActivity不需要使用setContentView()。
處理ListView中條目的點擊與其它視圖對象的處理方式相似:使用偵聽器(listener)。在這里,我們關注OnTimeClickListener。你可能注意到我們還沒有直接處理過ListView對象。現在是時候了。在ListActivity中,簡單地調用getListView()方法來遍歷ListView,然後調用setOnItemClickListener()方法並且一次性實現它們。
通過繼承Activity創建一個新的類,並把它命名為TutViewerActivity.java。為它創建一個布局資源文件,文件只包括一項:一個WebView控制項
❹ android studio登錄注冊
我們項目的前提是你已經將基本的運行環境及sdk都已經安裝好了,讀者可自行網路環境配置相關內容,本文不再贅述。右鍵點擊new-->Mole,Mole相當於新建了一個項目。如圖所示
選擇Android Application,點擊next
將My Mole 和app改成自己項目相應的名字,同時選擇支持的Android版本
這一步我們選擇Blank Activity,自己手動編寫登錄界面,而不依賴系統內置的Login Activity,一直點擊next,最後點擊finish就完成了項目的創建
在project下我們可以看到出現了我們剛才創建的login項目
展開res/layout,點擊打開activity_main.xml文件,在這個文件里我們將完成登錄界面的編寫
這是初始的主界面,還沒有經過我們編寫的界面,Android Studio有一個很強大的預覽功能,相當給力
我們將activity_main.xml的代碼替換成如下代碼:
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:gravity="center_vertical"
android:stretchColumns="0,3">
<TableRow>
<TextView />
<TextView
android:text="賬 號:"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="24px"
/>
<EditText
android:id="@+id/account"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="24px"
android:minWidth="220px"/>
<TextView />
</TableRow>
<TableRow android:layout_marginTop="20px">
<TextView />
<TextView
android:text="密 碼:"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
<EditText
android:id="@+id/pwd"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:minWidth="220px"
android:textSize="24px"
android:inputType="textPassword"/>
<TextView />
</TableRow>
<TableRow android:layout_marginTop="20px">
<TextView />
<Button
android:id="@+id/login"
android:text="登錄"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
<Button
android:id="@+id/quit"
android:text="退出"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
<TextView />
</TableRow>
</TableLayout>
預覽效果如圖
10
使用Android 手機進行測試,大功告成
❺ android作業創建用戶登陸和密碼
布局文件:
<RelativeLayoutxmlns: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:background="#efefef"
tools:context="cn.teachcourse.activity.MainActivity">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="50dp"
android:layout_alignParentTop="true"
android:background="#2088c2"
android:orientation="horizontal"
android:gravity="center_horizontal">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="8dp"
android:layout_marginTop="8dp"
android:gravity="center_vertical"
android:text="登錄界面"
android:textSize="22sp"
android:layout_gravity="center_vertical"
android:textColor="#FFFFFF"/>
</LinearLayout>
<!--輸入用戶名框-->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_above="@+id/center_point"
android:background="#FFFFFF"
android:orientation="horizontal">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:drawableLeft="@drawable/user_login_icon"/>
<EditText
android:id="@+id/user_name_ET"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:hint="@string/username_hint"/>
</LinearLayout>
<!--輸入密碼框-->
<LinearLayout
android:id="@+id/pass_word_ll"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/center_point"
android:background="#FFFFFF"
android:orientation="horizontal">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:drawableLeft="@drawable/user_login_lock"/>
<EditText
android:id="@+id/pass_word_ET"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:hint="@string/password_hint"
android:inputType="textPassword"/>
</LinearLayout>
<Button
android:id="@+id/login_btn"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/pass_word_ll"
android:layout_margin="10dp"
android:background="@drawable/blue_bg"
android:text="@string/login_str"
android:textColor="#FFFFFF"/>
<View
android:id="@+id/center_point"
android:layout_width="1dp"
android:layout_height="1dp"
android:layout_centerInParent="true"/>
</RelativeLayout>
實現代碼:
packagecn.teachcourse.activity;
importjava.util.regex.Matcher;
importjava.util.regex.Pattern;
importcn.teachcourse.common.BaseActivity;
importcn.teachcourse.utils.SharedPreferenceUtil;
importandroid.app.Activity;
importandroid.content.Intent;
importandroid.os.Bundle;
importandroid.text.TextUtils;
importandroid.view.View;
importandroid.view.View.OnClickListener;
importandroid.widget.Button;
importandroid.widget.EditText;
importandroid.widget.Toast;
/**
*@authorTeachCourse博客保存數據的的方法有:
*1、網路存儲
*2、資料庫sqlite存儲
*3、SharedPreferences本地化存儲
*4、File文件存儲
*四種存儲數據的方法,對應的Demo:
*NetworkDemo、SQLiteDemo、SharedPreferencesDemo和FileDemo
*
*/
{
privateEditTextmUserName_ET,mPassword_ET;
privateButtonmLogin_btn;
privateStringusername;
privateStringpassword;
@Override
protectedvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
//activity_main編輯一個注冊登錄界面
setContentView(R.layout.activity_main);
SharedPreferenceUtil.initPreference(this);
initView();
}
@Override
protectedvoidonResume(){
//檢查SharedPreferences文件中是否保存有用戶名和密碼
super.onResume();
StringusernameStr=SharedPreferenceUtil.getString("username",null);
StringpasswordStr=SharedPreferenceUtil.getString("password",null);
if(!TextUtils.isEmpty(usernameStr)){
mUserName_ET.setText(usernameStr);
}elseif(!TextUtils.isEmpty(passwordStr)){
mPassword_ET.setText(passwordStr);
}
}
privatevoidinitView(){
mLogin_btn=(Button)findViewById(R.id.login_btn);
mUserName_ET=(EditText)findViewById(R.id.user_name_ET);
mPassword_ET=(EditText)findViewById(R.id.pass_word_ET);
mLogin_btn.setOnClickListener(this);
}
@Override
publicvoidonClick(Viewv){
switch(v.getId()){
caseR.id.login_btn:
login();
break;
}
}
privatevoidlogin(){
username=mUserName_ET.getText().toString().trim();
password=mPassword_ET.getText().toString().trim();
//這里只驗證格式是否合法,不驗證用戶名和密碼的正確性,SharedPreferences將數據存儲到本地
if(checkPhone(username)&&checkNotNull(password)){
SharedPreferenceUtil.putString("username",username);
SharedPreferenceUtil.putString("password",password);
toSecondActivity();
}
}
privatevoidtoSecondActivity(){
Intentintent=newIntent(this,SecondActivity.class);
Bundlebundle=newBundle();
bundle.putString("username",username);
bundle.putString("password",password);
intent.putExtras(bundle);
startActivity(intent);
MainActivity.this.finish();
}
/**
*@paramvalue需要驗證的用戶名
*@return
*/
privatebooleancheckNotNull(Stringvalue){
if(!TextUtils.isEmpty(value)){
if(value.length()<6){
Toast.makeText(this,"密碼填寫不合法!",Toast.LENGTH_LONG).show();//號碼填寫不正確
returnfalse;
}else{
returntrue;
}
}else{
Toast.makeText(this,"密碼不能為空",Toast.LENGTH_LONG).show();
returnfalse;
}
}
/**
*@paramphone需要驗證的手機號碼
*@return
*/
privatebooleancheckPhone(Stringphone){
if(!TextUtils.isEmpty(phone)){
if(ismobileNO(phone)){
returntrue;
}else{
Toast.makeText(this,"號碼填寫不正確",Toast.LENGTH_LONG).show();//號碼填寫不正確
returnfalse;
}
}else{
Toast.makeText(this,"號碼不能為空",Toast.LENGTH_LONG).show();//不能為空
returnfalse;
}
}
/**
*手機號碼的驗證,嚴格驗證
*
*@param/mobiles要驗證的手機號碼
*@return
*/
publicstaticbooleanismobileNO(Stringmobiles){
if(TextUtils.isEmpty(mobiles)){
returnfalse;
}
Patternp=Pattern
.compile("^((13[0-9])|(14[5,7])|(15[^4,\D])|(17[0,6,7,8])|(18[0-9]))\d{8}$");
Matcherm=p.matcher(mobiles);
returnm.matches();
}
}
效果圖:
❻ android注冊界面怎麼實現驗證碼
需要接入一個簡訊服務平台,這個是收費的,一般幾分錢一條,網路一下一大堆
❼ android注冊界面,如何檢測資料庫中賬號是否存在
對資料庫中存賬號的表進行檢索,跟輸入的賬號對比。
❽ Android的apkplug插件開發具體怎麼編譯生成插件 apk 文件
步驟1:注冊ApkPlug官網賬號:
打開Apkplug官網後,點擊右上角的「注冊」,在跳轉頁面填入相關信息,注冊界面如下:
確認後注冊成功,使用你的賬號登錄網站。你就可以用Apkplug開發應用了
END
步驟2:開發插件
Apkplug中的插件也是一個完整的apk,它與普通應用的區別有以下3點:
1, 插件assets目錄下有一個plugin.xml文檔,通過它可判斷一個工程是主應用還是插件。
2, 插件有一個入口類BundleActivator
3, 插件會外部引用一個osgi.jar文件
開發插件的步驟有如下4步:
1,引入osgi.jar庫文件
Apkplug中插件需要導入的庫文件只有一個osgi.jar。
導入osgi.jar庫文件需要注意一下
osgi.jar文件只能引用不能編譯到apk文件中,否則會出現類沖突的情況
異常代碼:had used a different Lorg/osgi/framework/BundleActivator; ring pre-verification。
osgi.jar包導入方法:
這文件在Apkplug SDK中可以找到。
2,編寫插件入口類BundleActivator
插件啟動時首先調用BundleActivator,其功能類似android中的application類。
public class SimpleBundle implements BundleActivator
{
private BundleContext mcontext = null;
public void start(BundleContext context) throws Exception
{
System.err.println("你好我是插件,我將為你展示啟動acitivty我已經啟動了 我的BundleId為:"+context.getBundle().getBundleId());
}
public void stop(BundleContext context)
{
System.err.println("你好我是插件,我被停止了 我的BundleId為:"+context.getBundle().getBundleId());
}
}
3,編寫plugin.xml配置文件
plugin.xml
是一個配置表,它跟AndroidManifest.xml作用類似。 plugin.xml文檔放置在assets中即可 重要屬性說明:
Bundle-Name 插件名稱 Bundle-SymbolicName 插件包名
-與應用packagename可一一對應 Bundle-Version 插件版本 -1.0.0
Bundle-Activator 插件入口 -與Appliction 類似
Bundle-Activity 插件界面 -多個Activity可用 , 分割
Bundle-Service 插件Service -多個Service可用 , 分割
(v2.0.0新增) Bundle-Receiver 插件廣播 -多個廣播類可用 , 分割
(v2.0.0新增)
4, 編譯生成插件apk文件
插件工程中添加的文件目錄結構如下:
最後編譯運行插件工程,生成的apk文件即為插件文件
END
步驟3:開發主應用
Apkplug 主應用開發分兩步集成:
1. 獲取主應用授權AppAuth。
登錄賬號進入Apkplug後台後,切換到「應用授權頁面」,按要求填寫好應用信息,然後確定,你就擁有了一個等待開發的應用授權AppAuth。應用授權界面如下:
進入「授權列表」頁面,點擊「查看詳情」鏈接,進入「應用詳情界面」,就可以看到已申請的AppAuth,點擊其後面的「復制」,即可直接復制AppAuth,如下圖所示
2. 對接Apkplug SDK 導入相關庫文件。
①配置應用許可權
主應用需要幾個基礎的許可權配置,請將以下的幾個許可權加入到主應用的AndroidManifest.xml中。
<!-- 插件平台需要的許可權! -->
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"></uses-permission>
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/>
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.READ_PHONE_STATE">
</uses-permission>
另外將一下加入到<application></application>節點中
<!-- 插件平台需要的配置! -->
<activity
android:name="org.apkplug.app.apkplugActivity"
android:theme="@style/android:Theme.Light"
android:configChanges="orientation|keyboardHidden"
/>
最後將我們從Apkplug管理後台申請到的AppAuth加入到配置文件中。
<meta-data android:name="apkplug-auth" android:value="xxxxxxxx" ></meta-data>
註:由於3.2.2節中我們直接復制了AppAuth,此處直接粘貼到AndroidManifest文檔中。
如下圖:
②導入SDK庫文件
主應用需要導入兩個文件,將其放入libs目錄中即可。
1, libndkfoo.so
2, Bundle2.0.0.jar
如下圖:
這兩個庫文件在Apkplug SDK中可以找到。
然後:
主應用啟動Apkplug最簡只需要一段代碼即可,建議在Application中啟動框架。
FrameworkInstance frame=FrameworkFactory.getInstance().start(List<BundleActivator>,Context);
將上一步驟開發好的插件apk,放置在主應用工程里的assets路徑下。
如下圖:
END
步驟4:啟動主應用
最後啟動主應用即可。簡單的插件化apk的方法就講完了,有興趣的關注我,下次講雲端託管插件實現應用內更新。
❾ 問個android 問題。我在做個注冊界面,要在本地獲取圖片做為頭像,然後存到sdcard裡面,這要怎麼做。
本地獲取圖片為頭像?啥?
默認頭像圖片,你放在drawable下面就好,當用戶修改頭像之後,你把圖片保存到SD卡某個路徑下,以一定的命名規則 命名, 然後下次到這個路徑通過你所定的命名去載入圖片就好,沒有就再從網路獲取,然後再保存到SD卡