下载  >  移动开发  >  Android  > android开发新浪微博客户端完整攻略

android开发新浪微博客户端完整攻略 评分:

android开发新浪微博客户端完整攻略
、完成图片资源的准备后接下就是 layout文件的编写,在res/ layout文件夹下新 建main.xm1文件,这个1 ayout采用 Linearlayout控件作为顶层控件,然后用 I pageview 控件分别实现版本号图片顶贞部靠左对齐显小、软件名称和图标图片居中对齐、作者名称和 blog图片底部靠右对齐。注意在版本号图片显示 I pageview控件下面添加一个 Relativelayout控件作为软件名称和图标图片 Image vlew和作者名称和blog图片 Imageview的父控件用来控訇居中对齐已经底部对齐的实现,具体代码如下:代码 K?xmI version=1.0 encoding="utf-8? 2. Linearlayout xmins:android-http://schemas.androidcom/apk/res/android 3. android: id="@+id/layout 4. android: orientation= vertical 5. android: layout width="fill parent 6. android: layout height=fill parent> 7. <ImageView 8. android: layout width= wrap content 9. android: layout height=wrap content 10. android: src-@drawable/ver 11. android: layout marginTop="15dip 12. android: layout marginLeft="15dip 13. </Tmage View> 14. Relativelayout 15. android: layout width- fill parent 16. android: layout height= fill parent 17.<Imageview 18. android: layout width=" wrap content 19. android: layout height= wrap content 20. android: src-"@drawable/logo 21. android: layout centerInParent=true"> 22./Imageview> 23. 24.Imageview 25. android: layout width=wrap content 26. android: layout height="wrap content 27. android: src-"@drawable/dev 28. android: layout alignParentBottom-truc 29. android: layout alignParentRight=true 30. android: layout marginRight-5dip 31. android: layout marginBot tom=35dip> 32.</ImageView> 33./RclativcLayout> 34.</Linearlayout) 复制代码 、在ec打开名为 MainActivity的 Activity源代码文件进行编辑, on create部分代码 如下 1. public void onCreate(Bundle savedInstance State) 2. super onCreate(savedInstanceState) 3. setContent View(R layout main) 4.} 复制代码 然后运行项目可以在模拟器中显示,上面的几个图片都按照设计的位置和效果进行显示 只是整个页面的背景还是黑色的,接下来就是背景部分的显示实现,由于为了实现横竖屏切 换显示,背景图的显示采用代码进行控制显示,首先用如下方法获取当前手机是樻屏还是竖 屏 //获取屏幕方向 2. public static int ScreenOrient(Activity activity 3 4. int orient- activity. get RequestedOrientation () 5. if(orient ! ActivityInfo. SCREEN ORIENTATION LANDSCAPE & orient! ActivityInfo. SCREEN ORIENTATION PORTRAIT)[ 6./宽>高为横屏,反正为竖屏 7. WindowManager windowManager= activity. getWindowManager O) 8. Display display- windowManager. get DefaultDisplay( 9. int screenWidth display getWidth( 10. int screenHeight display getHeight O 11. orient= screenWidth< screenHeight Activity Info SCREEN ORIENTATION PORTRAIT ActivityInfo. SCREEN ORIENTATION LANDSCAPE 12.} 13. return orient 复制代码 然后编写一个名为 Auto Background的公共方法用来实现屏幕背景的自动切换,后面的几 乎每一个功能页面都需要用到这个方法 1. public static void AutoBackground(Activity activity, Viewview, int Background v, int Background h) 2. 3. int orient=ScreenOrient (activity) 4. if (orient== ActivitvInfo SCREEN ORIENTATLON PORTRAIT//9MR 5. view. setBackgroundResource(Background v) 6.}else(//横向 7. view set BackgroundResource(Background h) 8.} 复制代码 完成上述两方法后在 Main Activity的 on create方法中调用 AutoBackground方法 进行屏幕自动切换: 1. LinearLayout layout=(LinearLayout)findViewById(R. id layout 2.//背景自动适应 3. AndroidHelper AutoBackground (this, layout, R drawable. bg R drawable. bg h) 复制代码 到此完成了载入页面的UI部分的实现,测试运行模拟器中査看效果,基本上跟最上面 的设计效果图相符,测试效果图如下: 命554:mya ver′.0 我的新浪微博 载入中请稍等. 作方:的在力 bhtTp://www.cnblogscom/hll2oo8/ eoeandroid.com ●54my2xi6 Verl.D 我的新微博 载入中请稍等。体方:水的右也 Coehndroid. com android开发我的新浪微博客户端-载入页面 sqlite篇(1.2) 通过上一篇文章( android廾发我的新浪微博客户端-载入页面UI篇(1.1)已经完成 了载入页面的UI部分的实现,效果如上图,接下来在上面的基础上完成载入页面的功能代 ver′.0 我的新浪微博 载入中请稍等. 作方:的在力 bhtTp://www.cnblogscom/hll2oo8/ eoeandroid.com 首先说明一下新浪微博提供了 OAuth和 Base oauth两种认证方式(如果不知道什么是 0Auth和 Base oauth请自己 google一下恶补,同时接下来的2篇随笔也会对这方血进行详 细的说明以及具体实现),本项目是采用0Auth认证方式,采用这种方式就需要有用户的新 浪User1、 Access token、 Access secret这3样东西才能自由便利的调用新浪的开放接∏, 本项日是这样做的当用户第一次使用软件时进行授权认证获取这3样东西的时候存储到 sqlite库中以便用户下次使用时不需要重新进行繁琐的授权认证操作直接从 sqlite库中读 取出来即可,由于这样的需求载入贞亩的功能设定是这样:当用户打开软件显小载入贞面时 开始检查 sqlite库中是否已经保存有用户的新浪微博的 UserⅠD号、 Access token、 Access Secret的记录,如果·条记录都没有那就说明用户是第次使用本软件那么跳到认证授权 页面进行授权认证操作(认证授权功能在接下来的两篇中进行实现讲解)获取这3个值保存 到 sqlite库中,如果已经包括了记录,那么读取这些记录的 Userid号、 Access token、 Access Secret值然后根据这3个值调用新浪的api接口获取这些记录对应的用户昵称和用户头像 图标等信息。 上面功能设定中涉及到 sqlite数据库的创建、数据表的创建、数据记录的添加、数据 记录的读取等操作,这里新建名为 Syli tehelper.java类文件提供 sqlite数据表的创建 更新等,代码如下: 1. public class SqliteHelper extends SQLiteOpenHelper 2./用来保存 3. Userid、 Access Token、 Access secret 4.的表名 5. public static final String TB NAME=users 6. public SqliteHelper(Context context, String name, CursorFactory factory, int version) I 7. super(context, name, factory, version 9./创建衣 override 11. public void onCreate(SQLiteDatabase db) I 12. db. execSQL CREATE TABLE IF NOT EXISTS+ 13. TB NAME+(+ 14. UserInfo ID+ integer primary key,+ 15. UserInfo USERID+ varchar 16. Userinfo TOKEN+ varchar,+ 17. UserInfo. ToKENSECreT+ varchar 18 UserInfo USERNAME+ varchar,+ 19. UserInfo. USERiCoN1 blob 21.); 22. Log e( Database,onCreate) 24./更新表 25. @Override 26. public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion 27. db exeC SQL( DROP TABLE IF EXISTS+ TB NAME) 28. onCreate(db) a tabase, onUpgrade ) 31.//更新列 32. public void update Column (SQLiteDatabase db, String oldColumn, String newColumn, String type Column)I 34. db exeC SQL(ALTER TABLE+ 35. TB NAME I CHIANGE 36. adcolumn new Column typeco lumn 39. catch(Exception c)t 40. e printStackTrace O) 41 12.} 43.} 复制代码 接下来新建名为 DataHelper. Java类文件实现用户记录的创建、更新、删狳等,代码如 1. public class Datallelper 2.//数据库名称 private static String DB Name-mysinaweibo db 4./数据库版本 5. private static int DB VERSION- 2 6. private sQLiteDatabase db 7. private SqliteHelper dbHelper 9. public DataHe per(Context context)i 10. dbHelper-new SqliteHelper(context, DB NAME, null, DB VERSION) 11.db= dbllelper get WritableDatabaseo 12 14. public void Close() 15. 16. db. close o 17. dbHelper close o 19./获取 users表中的 Userid、 Access token、 Access secret的记录 20. public List<UserInfo> GetUserList(Boolean isSimple 21 22. List(User Info> userList= new ArrayList<UserInfo>( 23. Cursor cursor-db query(SqlitcHelper TB NAME, null, null, null, null, null, UserInfo IDI DESC) 24 cursor. moveToFirstO 25. while(! cursor. isAfterLast(&&(cursor getString(1)!=null))t 26. UserInfo user-new UserInfoo 27. user setId(cursor getString(0)) 28. user. setUserId(cursor getString(1)) 29. user, setToken(cursor. get String(2)) 30. user set Token Secret(cursor. get String(3)) 31. if(!isSimple)( 32. user setUser\ame(cursor getString(1)) 3. ByteArray Inputstream stream=new ByteArray Input Stream(cursor getBlob(5)) 34. Drawable icon= Drawable. createFromStream(stream,image 5. user. setlserlcon(icon

...展开详情
2013-01-08 上传 大小:1.4MB
举报 收藏
分享
android开发新浪微博客户端

android开发新浪微博客户端,很有帮助的。。。

立即下载
android开发新浪微博客户端完整攻略

android开发新浪微博客户端完整攻略

立即下载
android开发新浪微博客户端 完整攻略

android开发新浪微博客户端 完整攻略

立即下载
android开发新浪微博客户端源代码

android开发新浪微博客户端源代码.rar

立即下载
android开发新浪微博客户端+完整攻略

android开发android开发新浪微博客户端+完整攻略新浪微博客户端+完整攻略

立即下载
android开发新浪微博客户端+完整攻略+源码

android开发新浪微博客户端+完整攻略+源码

立即下载
android开发新浪微博客户端+完整攻略.rar

android开发新浪微博客户端+完整攻略.rar

立即下载
手把手教你用Android开发新浪微博客户端》

《手把手教你用Android开发新浪微博客户端》

立即下载
手把手教你用Android开发新浪微博客户端.pdf

手把手教你用Android开发新浪微博客户端.学习android的好材料,帮了我不少忙,现在拿出来同大家分享

立即下载
《手把手教你用Android开发新浪微博客户端》

手把手Android开发新浪微博客户端~~~~~~~~~~~~~~~~~~~~~~

立即下载
android开发分享新浪微博

新浪微博android版接口,让你的Android应用程序和与新浪微博互动!

立即下载
android新浪微博开发

微博Android平台SDK为第三方微博应用提供了文档易用的微博API调用服务,使第三方客户端无需了解复杂的验证,API调用过程。并可以实现分享到微博的功能,可以分享文字,或者多媒体信息到内置的分享页面,并发送到微博。

立即下载
html+css+js制作的一个动态的新年贺卡

该代码是http://blog.csdn.net/qq_29656961/article/details/78155792博客里面的代码,代码里面有要用到的图片资源和音乐资源。

立即下载
qBittorrent插件集合(22个)

btetree.py cpasbien.py divxtotal.py ilcorsaronero.py kickass.py leetx.py limetorrents.py linuxtracker.py nyaa.py nyaapantsu.py nyaasi.py pantsu.py psychocydd.py rarbg.py rutor.py skytorrents.py sukebei.py sumotorrent.py tntvillage.py torrent9.py torrentfunk.py zooqle.py

立即下载
压缩包爆破解密工具(7z、rar、zip)

压缩包内包含三个工具,分别可以用来爆破解密7z压缩包、rar压缩包和zip压缩包。

立即下载
中兴B860AV1.1机顶盒固件

中兴B860AV1.1 root固件,刷机后可以安装任意软件,不在受限制

立即下载
算法第四版 高清完整中文版PDF

《算法 第4版 》是Sedgewick之巨著 与高德纳TAOCP一脉相承 是算法领域经典的参考书 涵盖所有程序员必须掌握的50种算法 全面介绍了关于算法和数据结构的必备知识 并特别针对排序 搜索 图处理和字符串处理进行了论述 第4版具体给出了每位程序员应知应会的50个算法 提供了实际代码 而且这些Java代码实现采用了模块化的编程风格 读者可以方便地加以改造

立即下载
服务器CPU天梯图_最全CPU天梯图

主要是服务器CPU天梯图_最全CPU天梯图,文字版,不是图片

立即下载
网易云缓存音乐批量转化为mp3格式(自动识别歌名)

- 将网易云音乐的uc!缓存文件转换成MP3音乐文件,高品质。 - **支持单文件转换或批量转换(新)。** - **添加了自动获取文件名的功能。** - 图形界面只适用于Windows系统。 - *解决转换时界面卡顿的问题。* - *提升了转换速度。*

立即下载