首页 文章 精选 留言 我的

精选列表

搜索[android studio],共10000篇文章
优秀的个人博客,低调大师

Android:JSON

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 // 输出结果为: // { // "function":"功能" // "text":11111, // "key":{"age":23,"name":"tom"}, // "user":[ // {"age":23,"name":"jem"}, // {"age":32,"jerry":"nay"} // ], // } private void btn2Click() //输出至服务端 { JSONObject jsonobj2 = new JSONObject(); JSONObject jsonobj1 = new JSONObject(); JSONArray jsonarr = new JSONArray(); try { jsonobj1.put( "function" , "功能" ); jsonobj1.put( "text" , 11111 ); jsonobj2.put( "name" , "tom" ); jsonobj2.put( "age" , 23 ); jsonobj1.put( "key" , jsonobj2); jsonarr.put( new JSONObject().put( "name" , "jem" ).put( "age" , 23 )); jsonarr.put( new JSONObject().put( "jerry" , "nay" ).put( "age" , 32 )); jsonobj1.put( "user" , jsonarr); String str = jsonobj1.toString(); textView.setText(str); Log.e( "d" , str); } catch (JSONException e) { e.printStackTrace(); } } private void btn1Click() //从服务端获取数据 { try { JSONObject jsonObject = new JSONObject(json); JSONObject jsonObject1 = jsonObject.getJSONObject( "category" ); String str = jsonObject1.getString( "@scheme" ); textView.setText(str); } catch (JSONException e) { e.printStackTrace(); } } String json = "{'category':{'@scheme':'http://www.douban.com/2007#kind','@term':'http://www.douban.com/2007#book'},'db:tag':[{'@count':111,'@name':'片山恭一'},{'@count':51,'@name':'日本'},{'@count':43,'@name':'日本文学'},{'@count':31,'@name':'满月之夜白鲸现'},{'@count':28,'@name':'小说'},{'@count':10,'@name':'爱情'},{'@count':7,'@name':'純愛'},{'@count':6,'@name':'外国文学'}],'title':{'$t':'满月之夜白鲸现'},'author':[{'name':{'$t':'[日] 片山恭一'}}],'summary':{'$t':'那一年,是听莫扎特、钓鲈鱼和家庭破裂的一年。说到家庭破裂,母亲怪自己当初没有找到好男人,父亲则认为当时是被狐狸精迷住了眼,失常的是母亲,但出问题的是父亲……。'},'link':[{'@rel':'self','@href':'http://api.douban.com/book/subject/1220562'},{'@rel':'alternate','@href':'http://book.douban.com/subject/1220562/'},{'@rel':'image','@href':'http://img3.douban.com/spic/s1747553.jpg'},{'@rel':'mobile','@href':'http://m.douban.com/book/subject/1220562/'}],'db:attribute':[{'$t':'7543632608','@name':'isbn10'},{'$t':'9787543632608','@name':'isbn13'},{'$t':'满月之夜白鲸现','@name':'title'},{'$t':'180','@name':'pages'},{'$t':'豫人','@name':'translator'},{'$t':'[日] 片山恭一','@name':'author'},{'$t':'15.00元','@name':'price'},{'$t':'青岛出版社','@name':'publisher'},{'$t':'平装','@name':'binding'},{'$t':'2005-1','@name':'pubdate'}],'id':{'$t':'http://api.douban.com/book/subject/1220562'},'gd:rating':{'@min':0,'@numRaters':289,'@average':'7.0','@max':10}}" ; 本文转自 glblong 51CTO博客,原文链接:http://blog.51cto.com/glblong/1212834,如需转载请自行联系原作者

优秀的个人博客,低调大师

Android:ListFragment

MyListFragment类: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 public class MyListFragment extends ListFragment //自身带了一个listview,直接onCreate即可 { private String[] mStr = new String[]{ "sdf" , "dsaf" , "dsafd" , "fsdgd" }; @Override public void onCreate(Bundle savedInstanceState) { super .onCreate(savedInstanceState); //直接setListAdapter setListAdapter( new ArrayAdapter<String>(getActivity(), R.layout.simple_list_item_1,mStr)); } //监听listview @Override public void onListItemClick(ListView l, View v, int position, long id) { super .onListItemClick(l, v, position, id); } } 本文转自 glblong 51CTO博客,原文链接:http://blog.51cto.com/glblong/1229560,如需转载请自行联系原作者

优秀的个人博客,低调大师

Android Menu

收集一些简单的UI源码,没必要记,用的时候直接来查。 importandroid.app.Activity; importandroid.os.Bundle; importandroid.view.Menu; importandroid.view.MenuItem; publicclassex01extendsActivity{ publicstaticfinalintADD_ID=Menu.FIRST; publicstaticfinalintDELETE_ID=Menu.FIRST+1; publicstaticfinalintEXIT_ID=Menu.FIRST+2; @Override publicvoidonCreate(Bundleicicle){ super.onCreate(icicle); setContentView(R.layout.main); } @Override publicbooleanonCreateOptionsMenu(Menumenu){ super.onCreateOptionsMenu(menu); menu.add(0,ADD_ID,0,R.string.menu_add); menu.add(0,DELETE_ID,1,R.string.menu_delete); menu.add(0,EXIT_ID,2,R.string.menu_exit); returntrue; } @Override publicbooleanonOptionsItemSelected(MenuItemitem){ switch(item.getItemId()){ caseADD_ID: setTitle("Insert..."); break; caseDELETE_ID: setTitle("Delete..."); break; caseEXIT_ID: finish(); break; } returnsuper.onOptionsItemSelected(item); } } 本文转自 最牛傻蛋 51CTO博客,原文链接:http://blog.51cto.com/zuiniuwang/717493,如需转载请自行联系原作者

优秀的个人博客,低调大师

Android:MediaPlayer

MediaPlayer生命周期: 注:1.prepare会造成阻塞 要先缓存一段后才会播放 2.调用stop()方法后,在调用star()会出现状态错误。可用以下方法替代解决: 1 2 3 4 5 6 7 8 9 10 11 // 停止播放 private void stop() { // mPlayer.stop(); // 用下面的方法替代stop方法 mPlayer.pause(); mPlayer.seekTo( 0 ); sendPlayBroadcast(); } 范例: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 public class MediaPlayerServeice extends Service { private MediaPlayer mPlayer; private SongJson songJson; private ArrayList<SongJson> mPlayList = new ArrayList<SongJson>(); //播放列表 private ArrayList<SongJson> mRadomPlayList = new ArrayList<SongJson>(); //随机播放列表 private int mPlayMode; //播放模式 private SongJson mPlayingSong; //当前播放歌曲 private int mSongPosition; //当前播放歌曲在列表中的位置 public MediaPlayerServeice() { } @Override public void onCreate() { super .onCreate(); mPlayingSong = new SongJson(); mPlayer = new MediaPlayer(); mBinder = new PlayBinder(); //出现状态错误时,此方法规避fc mPlayer.setOnErrorListener( new OnErrorListener() { @Override public boolean onError(MediaPlayer mp, int what, int extra) { mPlayer.reset(); return false ; } }); //监听音乐是否播放完毕 mPlayer.setOnCompletionListener( new OnCompletionListener() { @Override public void onCompletion(MediaPlayer mp) { playNext(); } }); } private IBinder mBinder; @Override public IBinder onBind(Intent intent) { return mBinder; } //快进快退 private void seekTo( int msec) { // mPlayer.getDuration();//得到歌曲总时间 mPlayer.seekTo(msec); } //得到当前播放位置 public int getCurrentPosition() { return mPlayer.getCurrentPosition(); } //播放下一首 private void playNext() { } //停止播放 private void stop() { mPlayer.stop(); } //得到播放循环模式 private int setPlayMode( int mode) { return mPlayMode = mode; } //添加歌曲至播放列表 private void setPlayList(ArrayList<SongJson> list) { } // 得到当前播放进度 private int getCurrTime() { return mPlayer.getCurrentPosition(); } //继续播放 private void continuePlay() { mPlayer.start(); } //是否正在播放 private boolean isplaying() { return mPlayer.isPlaying(); } //暂停 private void pause() { mPlayer.pause(); } // 播放音乐 private void play( final String url) { mPlayer.reset(); try { mPlayer.setDataSource(url); mPlayer.setOnPreparedListener( new OnPreparedListener() { @Override public void onPrepared(MediaPlayer mp) { mPlayer.start(); } }); mPlayer.prepareAsync(); } catch (IllegalArgumentException e) { e.printStackTrace(); } catch (SecurityException e) { e.printStackTrace(); } catch (IllegalStateException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } // 自定义Binder public class PlayBinder extends Binder { public void play(String url) { MediaPlayerServeice. this .play(url); } public boolean isplaying() { return MediaPlayerServeice. this .isplaying(); } public void pause() { MediaPlayerServeice. this .pause(); } public void continuePlay() { MediaPlayerServeice. this .continuePlay(); } public int getCurrTime() { return MediaPlayerServeice. this .getCurrTime(); } public void setPlayList(ArrayList<SongJson> list) { MediaPlayerServeice. this .setPlayList(list); } public int setPlayMode( int mode) { return MediaPlayerServeice. this .setPlayMode(mode); } public void playNext() { MediaPlayerServeice. this .playNext(); } public void stop() { MediaPlayerServeice. this .stop(); } public int getCurrentPosition() { return MediaPlayerServeice. this .getCurrentPosition(); } } } 本文转自 glblong 51CTO博客,原文链接:http://blog.51cto.com/glblong/1248371,如需转载请自行联系原作者

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

Rocky Linux

Rocky Linux

Rocky Linux(中文名:洛基)是由Gregory Kurtzer于2020年12月发起的企业级Linux发行版,作为CentOS稳定版停止维护后与RHEL(Red Hat Enterprise Linux)完全兼容的开源替代方案,由社区拥有并管理,支持x86_64、aarch64等架构。其通过重新编译RHEL源代码提供长期稳定性,采用模块化包装和SELinux安全架构,默认包含GNOME桌面环境及XFS文件系统,支持十年生命周期更新。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

用户登录
用户注册