您好,欢迎来到中国竞彩网官方网站!,我司主營業務:中国竞彩网,中彩网,500彩票,歡迎來電。
深圳企业网站制作
深圳網站制作業務咨詢
0755-61603557
趙先生:13714247375
深圳網站制作技術支持
您現在的位置:網站首頁 > 中国竞彩网注册

android頁面跳轉和切換的方式

文章作者:易捷網站制作公司编辑    文章来源:深圳網站制作公司-中彩网

第一種方式,用action來跳轉。

1、使用Action跳轉,如果有一個程序的AndroidManifest.xml中的某一個Activity的IntentFilter段中定義了包含了相同的Action那麽這個Intent就與這個目標Action匹配。如果這個IntentFilter段中沒有定義Type,Category,那麽這個Activity就匹配了。但是如果手機中有兩個以上的程序匹配,那麽就會彈出一個對話可框來提示說明。

Action的值在Android中有很多預定義,如果你想直接轉到你自己定義的Intent接收者,你可以在接收者的IntentFilter中加入一個自定義的Action值(同時要設定Category值爲"android.intent.category.DEFAULT"),在你的Intent中設定該值爲Intent的Action,就直接能跳轉到你自己的Intent接收者中。因爲這個Action在系統中是唯一的。

2,data/type,你可以用Uri來做爲data,比如Uriuri=Uri.parse(http://www.google.com);

Intenti=newIntent(Intent.ACTION_VIEW,uri);手機的Intent分發過程中,會根據http://www.google.com的scheme判斷出數據類型type

手機的Brower則能匹配它,在Brower的Manifest.xml中的IntenFilter中首先有ACTION_VIEWAction,也能處理http:的type。

3,至于分類Category,一般不要去在Intent中設置它,如果你寫Intent的接收者,就在Manifest.xml的Activity的IntentFilter中包含android.category.DEFAULT,這樣所有不設置Category(Intent.addCategory(Stringc);)的Intent都會與這個Category匹配。

4,extras(附加信息),是其它所有附加信息的集合。使用extras可以爲組件提供擴展信息,比如,如果要執行“發送電子郵件”這個動作,可以將電子郵件的標題、正文等保存在extras裏,傳給電子郵件發送組件。

Java代碼packagecom.android.edit_text;

importandroid.app.Activity;

importandroid.content.Intent;

importandroid.os.Bundle;

importandroid.view.KeyEvent;

importandroid.view.View;

importandroid.widget.EditText;

publicclassMyEditTextextendsActivity{

privateTextViewm_TextView;

privateEditTextm_EditText;

@Override

publicvoidonCreate(BundlesavedInstanceState){

super.onCreate(savedInstanceState);

setContentView(R.layout.main);

m_EditText=(EditText)this.findViewById(R.id.EditText01);

m_EditText.setOnKeyListener(editTextKeyListener);

}

privateEditText.OnKeyListenereditTextKeyListener=newEditText.OnKeyListener(){

@Override

publicbooleanonKey(Viewarg0,intarg1,KeyEventarg2){

//action跳轉,需要在AndroidManifest.xml中配置action

Intenti=newIntent("android.intent.action.mydialog");

MyEditText.this.startActivity(i);

returnfalse;

}

};

}

複制代碼Xml代碼<?xmlversion="1.0"encoding="utf-8"?>

<manifestxmlns:android="http://schemas.android.com/apk/res/android"

package="com.android.edit_text"android:versionCode="1"

android:versionName="1.0">

<applicationandroid:icon="@drawable/icon"android:label="@string/app_name">

<activityandroid:name=".MyEditText"android:label="@string/app_name">

<intent-filter>

<actionandroid:name="android.intent.action.MAIN"/>

<categoryandroid:name="android.intent.category.LAUNCHER"/>

</intent-filter>

</activity>

<!--配置跳轉activity-->

<activityandroid:name="com.android.dialog.MyDialog">

<intent-filter>

<!--配置action路徑-->

<actionandroid:name="android.intent.action.mydialog"/>

<categoryandroid:name="android.intent.category.DEFAULT"/>

</intent-filter>

</activity>

</application>

<uses-sdkandroid:minSdkVersion="7"/>

</manifest>

複制代碼第二種方式,用類名跳轉。

Intent負責對應用中一次操作的動作、動作涉及數據、附加數據進行描述,Android則根據此Intent的描述,負責找到對應的組件,將Intent傳遞給調用的組件,並完成組件的調用。Intent在這裏起著實現調用者與被調用者之間的解耦作用。

Intent傳遞過程中,要找到目標消費者(另一個Activity,IntentReceiver或Service),也就是Intent的響應者。

Java代碼packagecom.Android;

importandroid.app.Activity;

importandroid.content.Intent;

importandroid.os.Bundle;

importandroid.view.View;

importandroid.view.View.OnClickListener;

publicclassFormStuffextendsActivity{

@Override

publicvoidonCreate(BundlesavedInstanceState){

super.onCreate(savedInstanceState);

setContentView(R.layout.formstuff);

finalImageButtonbutton=(ImageButton)findViewById(R.id.android_button);

button.setOnClickListener(newOnClickListener(){

publicvoidonClick(Viewv){

//用類名跳轉,需要在AndroidManifest.xml中申明activity

Intentintent=newIntent(FormStuff.this,HelloTabWidget.class);

startActivity(intent);

}

});

}

複制代碼Xml代碼<?xmlversion="1.0"encoding="utf-8"?>

<manifestxmlns:android="http://schemas.android.com/apk/res/android"

package="com.Android"android:versionCode="1"android:versionName="1.0">

<applicationandroid:icon="@drawable/icon"android:theme="@android:style/Theme.NoTitleBar">

<activityandroid:name=".FormStuff"android:label="@string/app_name">

<intent-filter>

<actionandroid:name="android.intent.action.MAIN"/>

<categoryandroid:name="android.intent.category.LAUNCHER"/>

</intent-filter>

</activity>

<!--申明activity-->

<activityandroid:name="HelloTabWidget"></activity>

</application>

<uses-sdkandroid:minSdkVersion="4"/>

</manifest>

複制代碼一些Intent的常用發:

Java代碼顯示網頁

1.Uriuri=Uri.parse("http://google.com");

2.Intentit=newIntent(Intent.ACTION_VIEW,uri);

3.startActivity(it);

顯示地圖

1.Uriuri=Uri.parse("geo:38.899533,-77.036476");

2.Intentit=newIntent(Intent.ACTION_VIEW,uri);

3.startActivity(it);

4.//其他geoURI範例

5.//geo:latitude,longitude

6.//geo:latitude,longitude?z=zoom

7.//geo:0,0?q=my+street+address

8.//geo:0,0?q=business+near+city

9.//google.streetview:cbll=lat,lng&amp;cbp=1,yaw,,pitch,zoom&amp;mz=mapZoom

路徑規劃

1.Uriuri=Uri.parse("http://maps.google.com/maps?f=d&amp;saddr=startLatstartLng&amp;daddr=endLatendLng&amp;hl=en");

2.Intentit=newIntent(Intent.ACTION_VIEW,uri);

3.startActivity(it);

4.//wherestartLat,startLng,endLat,endLngarealongwith6decimalslike:50.123456

打電話

1.//叫出撥號程序

2.Uriuri=Uri.parse("tel:0800000123");

3.Intentit=newIntent(Intent.ACTION_DIAL,uri);

4.startActivity(it);

1.//直接打電話出去

2.Uriuri=Uri.parse("tel:0800000123");

3.Intentit=newIntent(Intent.ACTION_CALL,uri);

4.startActivity(it);

5.//用這個,要在AndroidManifest.xml中,加上

6.//&lt;uses-permissionid="android.permission.CALL_PHONE"/&gt;

傳送SMS/MMS

1.//調用短信程序

2.Intentit=newIntent(Intent.ACTION_VIEW,uri);

3.it.putExtra("sms_body","TheSMStext");

4.it.setType("vnd.android-dir/mms-sms");

5.startActivity(it);

1.//傳送消息

2.Uriuri=Uri.parse("smsto://0800000123");

3.Intentit=newIntent(Intent.ACTION_SENDTO,uri);

4.it.putExtra("sms_body","TheSMStext");

5.startActivity(it);

1.//傳送MMS

2.Uriuri=Uri.parse("content://media/external/images/media/23");

3.Intentit=newIntent(Intent.ACTION_SEND);

4.it.putExtra("sms_body","sometext");

5.it.putExtra(Intent.EXTRA_STREAM,uri);

6.it.setType("image/png");

7.startActivity(it);

傳送Email

1.Uriuri=Uri.parse("mailto:xxx@abc.com");

2.Intentit=newIntent(Intent.ACTION_SENDTO,uri);

3.startActivity(it);

1.Intentit=newIntent(Intent.ACTION_SEND);

2.it.putExtra(Intent.EXTRA_EMAIL,"me@abc.com");

3.it.putExtra(Intent.EXTRA_TEXT,"Theemailbodytext");

4.it.setType("text/plain");

5.startActivity(Intent.createChooser(it,"ChooseEmailClient"));

1.Intentit=newIntent(Intent.ACTION_SEND);

2.String[]tos={"me@abc.com"};

3.String[]ccs={"you@abc.com"};

4.it.putExtra(Intent.EXTRA_EMAIL,tos);

5.it.putExtra(Intent.EXTRA_CC,ccs);

6.it.putExtra(Intent.EXTRA_TEXT,"Theemailbodytext");

7.it.putExtra(Intent.EXTRA_SUBJECT,"Theemailsubjecttext");

8.it.setType("message/rfc822");

9.startActivity(Intent.createChooser(it,"ChooseEmailClient"));

1.//傳送附件

2.Intentit=newIntent(Intent.ACTION_SEND);

3.it.putExtra(Intent.EXTRA_SUBJECT,"Theemailsubjecttext");

4.it.putExtra(Intent.EXTRA_STREAM,"file:///sdcard/mysong.mp3");

5.sendIntent.setType("audio/mp3");

6.startActivity(Intent.createChooser(it,"ChooseEmailClient"));

播放多媒體

Uriuri=Uri.parse("file:///sdcard/song.mp3");

Intentit=newIntent(Intent.ACTION_VIEW,uri);

it.setType("audio/mp3");

startActivity(it);

Uriuri=Uri.withAppendedPath(MediaStore.Audio.Media.INTERNAL_CONTENT_URI,"1");

Intentit=newIntent(Intent.ACTION_VIEW,uri);

startActivity(it);


Market相關

1.//尋找某個應用

2.Uriuri=Uri.parse("market://search?q=pname:pkg_name");

3.Intentit=newIntent(Intent.ACTION_VIEW,uri);

4.startActivity(it);

5.//wherepkg_nameisthefullpackagepathforanapplication

1.//顯示某個應用的相關信息

2.Uriuri=Uri.parse("market://details?id=app_id");

3.Intentit=newIntent(Intent.ACTION_VIEW,uri);

4.startActivity(it);

5.//whereapp_idistheapplicationID,findtheID

6.//byclickingonyourapplicationonMarkethome

7.//page,andnoticetheIDfromtheaddressbar

1.Uriuri=Uri.fromParts("package",strPackageName,null);

2.Intentit=newIntent(Intent.ACTION_DELETE,uri);

3.startActivity(it);


android常用界面切換效果;

Activity的切換動畫指的是從一個activity跳轉到另外一個activity時的動畫。

{它包括兩個部分:

一部分是第一個activity退出時的動畫;

另外一部分時第二個activity進入時的動畫;

在Android的2.0版本之後,有了一個函數來幫我們實現這個動畫。這個函數就是overridePendingTransition

@Override

publicvoidonCreate(BundlesavedInstanceState){

super.onCreate(savedInstanceState);

setContentView(R.layout.SplashScreen);

newHandler().postDelayed(newRunnable(){

@Override

publicvoidrun(){

IntentmainIntent=newIntent(SplashScreen.this,AndroidNews.class);

SplashScreen.this.startActivity(mainIntent);

SplashScreen.this.finish();

overridePendingTransition(R.anim.mainfadein,

R.anim.splashfadeout);

}

},3000);

}

上面的代碼只是閃屏的一部分。

getWindow().setWindowAnimations(int);

getWindow().setWindowAnimations(int);

這可沒有上個好但是也可以。

實現淡入淡出的效果1

overridePendingTransition(R.anim.splash_screen_fade,R.anim.splash_screen_hold);

實現淡入淡出的效果2

overridePendingTransition(android.R.anim.fade_in,android.R.anim.fade_out);

由左向右滑入的效果

overridePendingTransition(Android.R.anim.slide_in_left,android.R.anim.slide_out_right);

實現zoomin和zoomout,即類似iphone的進入和退出時的效果

overridePendingTransition(R.anim.zoomin,R.anim.zoomout);

overridePendingTransition(R.anim.zoomin,R.anim.zoomout);

新建zoomin.xml文件

<?xmlversion="1.0"encoding="utf-8"?>

<setxmlns:Android="http://schemas.android.com/apk/res/android"

Android:interpolator="@android:anim/decelerate_interpolator">

<scaleAndroid:fromXScale="2.0"android:toXScale="1.0"

Android:fromYScale="2.0"android:toYScale="1.0"

Android:pivotX="50%p"android:pivotY="50%p"

Android:duration="@android:integer/config_mediumAnimTime"/>

</set>

新建zoomout.xml文件

<?xmlversion="1.0"encoding="utf-8"?>

<setxmlns:Android="http://schemas.android.com/apk/res/android"

Android:interpolator="@android:anim/decelerate_interpolator"

Android:zAdjustment="top">

<scaleAndroid:fromXScale="1.0"android:toXScale=".5"

Android:fromYScale="1.0"android:toYScale=".5"

Android:pivotX="50%p"android:pivotY="50%p"

Android:duration="@android:integer/config_mediumAnimTime"/>

<alphaAndroid:fromAlpha="1.0"android:toAlpha="0"

Android:duration="@android:integer/config_mediumAnimTime"/>

</set>

深圳網站制作公司易捷網絡科技主營業務:企業網站制作、網站推廣優化、企業郵箱申請、域名空間購買、網站備案、論壇網站制作和企業網站維護。網站建設服務熱線:13714247375
上一篇企業網站制作技術文章:    企業網站運營推廣的方法和問題
下一篇企業網站制作技術文章:    公司網站制作的負載均衡解決方案

深圳網站制作最新案例推荐:

深圳網站制作相关文章阅读
關于我們
公司簡介
人才招聘
售後服務
聯系我們
網站制作套餐
基本型網站制作套餐
標准型網站制作套餐
品牌型網站制作套餐
綜合型網站制作套餐
網站制作教程
網站制作常見問題
網站優化常見問題
企業郵箱常見問題
網站備案常見問題
聯系方式
聯系人:趙經理
電話:0755-61603557
郵箱:info@qifor.com
手機:13714247375
地址:www.aaronpicar.com

微信掃碼咨詢
中国竞彩网公司版權所有    備案號:粵ICP備12084881號 網站地圖XML
QQ在線咨詢
網站建設
企業郵箱
域名申請
空間購買
推廣優化
網站維護
網站備案
論壇制作
友情链接: 百度百科   新浪博客   新浪网   hao123   新华网
热门关键词:中国竞彩网计算器| 中国竞彩网主页| 中国竞彩网怎么样| 中国竞彩网站| 中国竞彩网国际娱乐| 中国竞彩网线上娱乐| 中国竞彩网首页官| 中国竞彩网安卓版| 中国竞彩网注册登录| 中国竞彩网pc| 中国竞彩网平台| 中国竞彩网下载| 中国竞彩网首页官网| 中国竞彩网正规版| 中国竞彩网计算器胜| 中国竞彩网注册| 中国竞彩网官网| 中国竞彩网app| 中国竞彩网手机下载| 中国竞彩网官方| 中国竞彩网手机版| 中国竞彩网稳赢技巧| 中国竞彩网捕鱼| 中国竞彩网真人| 中国竞彩网首页比分| 中国竞彩网游戏| 中国竞彩网棋牌| 中国竞彩网址| 中国竞彩网足球网| 中国竞彩网登录| 中国竞彩网最新版| 中国竞彩网官方网站| 中国竞彩网在线|