APICloud开发者进阶之路|[ 模块教程 ] UIAlbumBrowser模块效果展示

UIAlbumBrowser是一个本地媒体资源扫描器,在Android平台上可扫描整个设备的资源,iOS仅扫描相册内部的资源。注意本模块在iPhone设备上仅支持iOS8.0及更高版本。
模块文档地址:https : //docs.apicloud.com/Client-API/UI-Layout / UIAlbumBrowser

本例展示了常用的imagePicker()接口和open()接口。imagePicker()只能选择照片,可以点击相机按钮进行拍摄。open()接口可以选择照片或视频,有类型参数进行控制。
注意iOS上返回的路径需要使用transPath()接口进行处理。附件为小部件形式的代码包。

模块经常使用的场景,如从相册选择图片然后进行上传。
高级用法,用scan()和fetch()接口从相册获取指定数量的图片路径,然后通过帧自定义选择界面UI效果。

<!DOCTYPE html>

​
<头>
    
    
    标题</ title>
    <link rel =“ stylesheet” type =“ text / css” href =“ ../ css / api.css” />
    <样式>
        身体 {
            padding-top:60像素;
        }
​
        .imgcontainter {
            显示:flex;
            显示:-webkit-flex;
            / *显示:-webkit-box; * /
            flex-direction:行;
            flex-wrap:包装;
            证明内容:环绕;
            / * justify-content:center; * /
            align-items:居中;
            / * align-content:拉伸; * /
            高度:100%;
            填充:5px;
        }
​
        .imgcontainter img {
            flex:1 1自动;
            -webkit-flex:1 1自动;
            宽度:145像素;
            高度:145px;
            边距:5px;
        }
​
        按钮{
            边距:10px;
        }
    </ style>
</ head>
​
<身体>
​
    <img src =“” id =“ img” width ='300'>
​
    <button tapmode type =“ button” onclick =“ UIAlbumBrowser_imagePicker()” name =“ button”> UIAlbumBrowser_imagePicker </ button>
    <button tapmode type =“ button” onclick =“ UIAlbumBrowser_open()” name =“ button”> UIAlbumBrowser_open </ button>
    <div id ='bd'class =“ imgcontainter”>
        <!-<img src =“ ../ image / 10801920.png” alt =“”>
        <img src =“ ../ image / 10801920.png” alt =“”>
        <img src =“ ../ image / 10801920.png” alt =“”>
        <img src =“ ../ image / 10801920.png” alt =“”>->
    </ div>
</ body>
<script type =“ text / javascript” src =“ ../ script / api.js”> </ script>
<script type =“ text / javascript”>
    var UIAlbumBrowser;
    var i = 0;
    var imgarr = [];
    apiready = function()
{
        UIAlbumBrowser = api.require('UIAlbumBrowser');
    };
​
    //打开图片选择器
    函数UIAlbumBrowser_imagePicker(){
        UIAlbumBrowser.imagePicker({
            最多:9
            样式:{
                bg:'#000000',
                // cameraImg:'widget://res/cameraImg.png',
                标记:{
                    位置:“ top_right”,
                    大小:20
                },
                导航:{
                    bg:'#000000',
                    cancelColor:'#fff',
                    cancelSize:16
                    nextStepColor:'#7fff00',
                    nextStepSize:16
                },
                thumbnail:{//(可选项)返回的标题配置,**建议本图片不要设置过大**若已有的标签,则使用已有的替代。若要重新生成替换,可先调用清除缓存接口api.clearCache()。
                    w:100,//(可选项)数字类型;返回的初始的宽;否则:原图的宽度
                    h:100 //(可选项)数字类型;返回的初始的宽;否则:原图的高度
                }
            },
            动画:真实,
        },函数(ret){
            如果(ret.eventType =='nextStep'){
                如果(ret.list && ret.list.length> 0){
                    imgarr = ret.list;
                    UIAlbumBrowser_transPath();
                }
                UIAlbumBrowser.closePicker();
                //alert(JSON.stringify(ret));
            }
            如果(ret.originalPath && ret.originalPath.length> 0){
                document.getElementById('img')。src = ret.originalPath;
            }
        });
    }
​
    函数UIAlbumBrowser_open(){
        UIAlbumBrowser.open({
            最多:9
            类型:“全部”,
            isOpenPreview:是的,
            样式:{
                bg:'#000000',
                标记:{
                    位置:“ bottom_left”,
                    大小:20
                },
                导航:{
                    bg:'#000000',
                    titleColor:'#ffffff',
                    titleSize:18,
                    cancelColor:'#00ff00',
                    cancelSize:16
                    finishColor:'#00ff00',
                    尺寸:16
                }
            },
            rotation:false //无效
        },函数(ret){
            如果(ret){
                alert(JSON.stringify(ret));
            }
        });
​
    }
​
    函数UIAlbumBrowser_transPath(){
        UIAlbumBrowser.transPath({
            路径:imgarr [i] .path
        },函数(ret,err){
            如果(ret){
                i ++;
                如果(i <imgarr.length){
                    UIAlbumBrowser_transPath();
                }其他{
                    i = 0;
                }
                var img = document.createElement('img');
                img.src = ret.path;
                document.getElementById('bd')。appendChild(img);
                console.log(“ ret.path:” + ret.path);
            }其他{
                console.log(JSON.stringify(err));
            }
        });
    }
</ script>
​
</ html>
复制代码</code></pre> 
</article>
                            </div>
                        </div>
                    </div>
                    <!--PC和WAP自适应版-->
                    <div id="SOHUCS" sid="1279473655394353152"></div>
                    <script type="text/javascript" src="/views/front/js/chanyan.js"></script>
                    <!-- 文章页-底部 动态广告位 -->
                    <div class="youdao-fixed-ad" id="detail_ad_bottom"></div>
                </div>
                <div class="col-md-3">
                    <div class="row" id="ad">
                        <!-- 文章页-右侧1 动态广告位 -->
                        <div id="right-1" class="col-lg-12 col-md-12 col-sm-4 col-xs-4 ad">
                            <div class="youdao-fixed-ad" id="detail_ad_1"> </div>
                        </div>
                        <!-- 文章页-右侧2 动态广告位 -->
                        <div id="right-2" class="col-lg-12 col-md-12 col-sm-4 col-xs-4 ad">
                            <div class="youdao-fixed-ad" id="detail_ad_2"></div>
                        </div>
                        <!-- 文章页-右侧3 动态广告位 -->
                        <div id="right-3" class="col-lg-12 col-md-12 col-sm-4 col-xs-4 ad">
                            <div class="youdao-fixed-ad" id="detail_ad_3"></div>
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </div>
    <div class="container">
        <h4 class="pt20 mb15 mt0 border-top">你可能感兴趣的:(android,ios)</h4>
        <div id="paradigm-article-related">
            <div class="recommend-post mb30">
                <ul class="widget-links">
                    <li><a href="/article/1899417099495862272.htm"
                           title="600条最强 Linux 命令总结(非常详细)零基础入门到精通,收藏这一篇就够了" target="_blank">600条最强 Linux 命令总结(非常详细)零基础入门到精通,收藏这一篇就够了</a>
                        <span class="text-muted">网安导师小李</span>
<a class="tag" taget="_blank" href="/search/%E7%A8%8B%E5%BA%8F%E5%91%98/1.htm">程序员</a><a class="tag" taget="_blank" href="/search/%E7%BC%96%E7%A8%8B/1.htm">编程</a><a class="tag" taget="_blank" href="/search/%E7%BD%91%E7%BB%9C%E5%AE%89%E5%85%A8/1.htm">网络安全</a><a class="tag" taget="_blank" href="/search/linux/1.htm">linux</a><a class="tag" taget="_blank" href="/search/%E8%BF%90%E7%BB%B4/1.htm">运维</a><a class="tag" taget="_blank" href="/search/%E6%9C%8D%E5%8A%A1%E5%99%A8/1.htm">服务器</a><a class="tag" taget="_blank" href="/search/%E5%AD%A6%E4%B9%A0/1.htm">学习</a><a class="tag" taget="_blank" href="/search/web%E5%AE%89%E5%85%A8/1.htm">web安全</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/java/1.htm">java</a>
                        <div>一、基本命令uname-m显示机器的处理器架构uname-r显示正在使用的内核版本dmidecode-q显示硬件系统部件(SMBIOS/DMI)hdparm-i/dev/hda罗列一个磁盘的架构特性hdparm-tT/dev/sda在磁盘上执行测试性读取操作系统信息arch显示机器的处理器架构uname-m显示机器的处理器架构uname-r显示正在使用的内核版本dmidecode-q显示硬件系统部</div>
                    </li>
                    <li><a href="/article/1899411298630823936.htm"
                           title="Android SDK 环境配置与离线安装问题(校园网)" target="_blank">Android SDK 环境配置与离线安装问题(校园网)</a>
                        <span class="text-muted">xdjkyb</span>
<a class="tag" taget="_blank" href="/search/Android/1.htm">Android</a><a class="tag" taget="_blank" href="/search/android/1.htm">android</a><a class="tag" taget="_blank" href="/search/c/1.htm">c</a><a class="tag" taget="_blank" href="/search/google/1.htm">google</a><a class="tag" taget="_blank" href="/search/microsoft/1.htm">microsoft</a><a class="tag" taget="_blank" href="/search/dataset/1.htm">dataset</a><a class="tag" taget="_blank" href="/search/%E7%9F%AD%E7%BD%91%E5%9D%80%E6%9C%8D%E5%8A%A1/1.htm">短网址服务</a>
                        <div>一、SDK环境配置过程出现的问题:FailedtofetchURLhttp://dl-ssl.google.com/android/repository/addons_list.xml,reason:Filenotfound.这是国内网络和谐掉了google服务器,解决办法:找到c:\windows\system32\drivers\etc下的HOST文件,将:74.125.237.1dl-ssl</div>
                    </li>
                    <li><a href="/article/1899387336022618112.htm"
                           title="android屏幕旋转生命周期,Activity、Fragment生命周期---横竖屏切换的生命周期" target="_blank">android屏幕旋转生命周期,Activity、Fragment生命周期---横竖屏切换的生命周期</a>
                        <span class="text-muted">老K先生</span>
<a class="tag" taget="_blank" href="/search/android%E5%B1%8F%E5%B9%95%E6%97%8B%E8%BD%AC%E7%94%9F%E5%91%BD%E5%91%A8%E6%9C%9F/1.htm">android屏幕旋转生命周期</a>
                        <div>先贴出一张大家众所周知activity流程图onCreate():创建Activity调用,用于Activity的初始化,还有个Bundle类型的参数,可以访问以前存储的状态。onStart():Activity在屏幕上对用户可见时调用,但还不可与用户交互onRestart():在activity停止后,在再次启动之前被调用。onResume():Activity开始和用户交互的时候调用,这时该A</div>
                    </li>
                    <li><a href="/article/1899380268410662912.htm"
                           title="【UI自动化技术思路分析】【总纲】UI自动化代码完整设计思路" target="_blank">【UI自动化技术思路分析】【总纲】UI自动化代码完整设计思路</a>
                        <span class="text-muted">小怪兽长大啦</span>
<a class="tag" taget="_blank" href="/search/UI%E8%87%AA%E5%8A%A8%E5%8C%96%E6%B5%8B%E8%AF%95%E6%8A%80%E6%9C%AF%E5%88%86%E4%BA%AB/1.htm">UI自动化测试技术分享</a><a class="tag" taget="_blank" href="/search/ui/1.htm">ui</a><a class="tag" taget="_blank" href="/search/%E8%87%AA%E5%8A%A8%E5%8C%96/1.htm">自动化</a><a class="tag" taget="_blank" href="/search/%E8%BF%90%E7%BB%B4/1.htm">运维</a>
                        <div>一、自动化框架散装思路代码结构如下所示️UIAutomationTools:UI自动化操作工具app:业务功能代码ui_automation.py:为Android设备提供UI自动化操作的工具类case:测试用例case_template.csv:UI测试用例步骤config:配置文件login:登录相关的ICON图标路径icon_config.yaml:图片路径配置文件runner:运行器con</div>
                    </li>
                    <li><a href="/article/1899378629184385024.htm"
                           title="Android Glide 的显示与回调模块原理源码级深度剖析" target="_blank">Android Glide 的显示与回调模块原理源码级深度剖析</a>
                        <span class="text-muted">&有梦想的咸鱼&</span>
<a class="tag" taget="_blank" href="/search/Android/1.htm">Android</a><a class="tag" taget="_blank" href="/search/Glide%E5%8E%9F%E7%90%86/1.htm">Glide原理</a><a class="tag" taget="_blank" href="/search/Android%E5%BC%80%E5%8F%91%E5%A4%A7%E5%85%A8/1.htm">Android开发大全</a><a class="tag" taget="_blank" href="/search/android/1.htm">android</a><a class="tag" taget="_blank" href="/search/glide/1.htm">glide</a>
                        <div>一、引言在当今的Android应用开发中,图片处理是一个至关重要的环节。从应用的图标展示到复杂的图片画廊,图片的加载和显示直接影响着用户体验。Glide作为一款功能强大且广泛使用的图片加载库,凭借其高效的性能、丰富的功能和简洁的API,成为了开发者的首选。其中,显示与回调模块更是Glide的核心部分,它负责将加载好的图片资源准确无误地显示在目标视图上,并在整个过程中提供各种回调机制,让开发者能够实</div>
                    </li>
                    <li><a href="/article/1899378630505590784.htm"
                           title="Android Glide 框架线程管理模块原理的源码级别深入分析" target="_blank">Android Glide 框架线程管理模块原理的源码级别深入分析</a>
                        <span class="text-muted">&有梦想的咸鱼&</span>
<a class="tag" taget="_blank" href="/search/Android/1.htm">Android</a><a class="tag" taget="_blank" href="/search/Glide%E5%8E%9F%E7%90%86/1.htm">Glide原理</a><a class="tag" taget="_blank" href="/search/glide/1.htm">glide</a><a class="tag" taget="_blank" href="/search/android/1.htm">android</a>
                        <div>一、引言在现代的Android应用开发中,图片加载是一个常见且重要的功能。Glide作为一款广泛使用的图片加载框架,以其高效、灵活和易用的特点受到了开发者的青睐。其中,线程管理模块是Glide框架中至关重要的一部分,它负责协调不同线程之间的工作,确保图片的加载、解码、处理等操作能够高效、有序地进行。合理的线程管理可以提高应用的性能,避免主线程阻塞,从而为用户提供流畅的交互体验。本文将深入Glide</div>
                    </li>
                    <li><a href="/article/1899378376871833600.htm"
                           title="Android中使用Glide加载图片闪烁问题" target="_blank">Android中使用Glide加载图片闪烁问题</a>
                        <span class="text-muted">奋斗的小鹰</span>
<a class="tag" taget="_blank" href="/search/android/1.htm">android</a><a class="tag" taget="_blank" href="/search/glide/1.htm">glide</a>
                        <div>Glide.with(vh.image).setDefaultRequestOptions(requestOptions).load(mImages[pos]).fitCenter().override(Target.SIZE_ORIGINAL,Target.SIZE_ORIGINAL).into(vh.image)当使用Glide如上面的方式加载图片时,尤其是当图片资源比较大时,在更新图片资源(</div>
                    </li>
                    <li><a href="/article/1899375602637533184.htm"
                           title="android13打基础: timepicker控件" target="_blank">android13打基础: timepicker控件</a>
                        <span class="text-muted">etcix</span>
<a class="tag" taget="_blank" href="/search/android/1.htm">android</a>
                        <div>publicclassCh4_TimePickerActivityextendsAppCompatActivityimplementsTimePickerDialog.OnTimeSetListener{privateTextViewtv_time;//声明一个文本视图对象privateTimePickertp_time;//声明一个时间选择器对象@OverrideprotectedvoidonC</div>
                    </li>
                    <li><a href="/article/1899368663480332288.htm"
                           title="Android入门(七) | 常用控件" target="_blank">Android入门(七) | 常用控件</a>
                        <span class="text-muted">·Jormungand</span>
<a class="tag" taget="_blank" href="/search/Android/1.htm">Android</a><a class="tag" taget="_blank" href="/search/android/1.htm">android</a><a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/android/1.htm">android</a><a class="tag" taget="_blank" href="/search/studio/1.htm">studio</a>
                        <div>文章目录TextView控件:文本信息Button控件:按钮EditText控件:输入框ImageView控件:图片ProgressBar控件:进度条AlertDialog控件:提示框ProgressDialog控件:带有进度条的提示框TextView控件:文本信息TextView是Android中较常用的一个控件。主要用于在界面上显示一段文本信息,配置在每个活动的xml文件中。除了之前用到的an</div>
                    </li>
                    <li><a href="/article/1899353911911837696.htm"
                           title="Android 11 DAC和MAC" target="_blank">Android 11 DAC和MAC</a>
                        <span class="text-muted">Optimus●Prime</span>
<a class="tag" taget="_blank" href="/search/android/1.htm">android</a><a class="tag" taget="_blank" href="/search/frameworks/1.htm">frameworks</a><a class="tag" taget="_blank" href="/search/Android/1.htm">Android</a><a class="tag" taget="_blank" href="/search/DAC/1.htm">DAC</a><a class="tag" taget="_blank" href="/search/MAC/1.htm">MAC</a><a class="tag" taget="_blank" href="/search/%E6%9D%83%E9%99%90%E6%8E%A7%E5%88%B6/1.htm">权限控制</a>
                        <div>在Android11中,DAC(DiscretionaryAccessControl,自主访问控制)和MAC(MandatoryAccessControl,强制访问控制)是两种不同的访问控制机制,主要用于权限管理、安全性以及进程间访问控制。1.DAC(自主访问控制)DAC(DiscretionaryAccessControl,自主访问控制)是Android的传统权限管理机制,基于用户ID(UID)</div>
                    </li>
                    <li><a href="/article/1899278129764036608.htm"
                           title="android:gravity=“center“无效解决方法" target="_blank">android:gravity=“center“无效解决方法</a>
                        <span class="text-muted">故事里故去</span>
<a class="tag" taget="_blank" href="/search/Android/1.htm">Android</a><a class="tag" taget="_blank" href="/search/android/1.htm">android</a><a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/ui/1.htm">ui</a>
                        <div>TextView中设置android:gravity="center"不起作用的解决方法网上很多是android:includeFontPadding=“false”,但是没有解决这个问题,后来发现是行导致的,设置成android:lines="1"就可以了</div>
                    </li>
                    <li><a href="/article/1899244464128454656.htm"
                           title="React Native" target="_blank">React Native</a>
                        <span class="text-muted">svygh123</span>
<a class="tag" taget="_blank" href="/search/%E9%97%AE%E9%A2%98%E8%A7%A3%E5%86%B3%E8%BF%87%E7%A8%8B/1.htm">问题解决过程</a><a class="tag" taget="_blank" href="/search/%E7%BC%96%E7%A8%8B/1.htm">编程</a><a class="tag" taget="_blank" href="/search/js/1.htm">js</a><a class="tag" taget="_blank" href="/search/react/1.htm">react</a><a class="tag" taget="_blank" href="/search/native/1.htm">native</a><a class="tag" taget="_blank" href="/search/react.js/1.htm">react.js</a><a class="tag" taget="_blank" href="/search/javascript/1.htm">javascript</a>
                        <div>ReactNative是一个用于构建原生移动应用的框架,它使用JavaScript和React(一个用于构建用户界面的JavaScript库)来开发iOS和Android平台的应用程序。ReactNative由Facebook开发并维护,并且是开源的。特点跨平台开发:ReactNative允许开发者使用相同的代码库为多个平台(如iOS和Android)编写应用,极大地提高了开发效率。热重载:开发者</div>
                    </li>
                    <li><a href="/article/1899236138455986176.htm"
                           title="Android Studio 安装汉化包" target="_blank">Android Studio 安装汉化包</a>
                        <span class="text-muted">奥特曼老师</span>
<a class="tag" taget="_blank" href="/search/android/1.htm">android</a><a class="tag" taget="_blank" href="/search/studio/1.htm">studio</a><a class="tag" taget="_blank" href="/search/android/1.htm">android</a><a class="tag" taget="_blank" href="/search/ide/1.htm">ide</a>
                        <div>Chinese(Simplified)LanguagePack/中文语言包确认自己的AndroidStudio的版本,需要跟下载的插件包对应上。插件包下载完成,无需解压打开AndroidStudio进行选择本地导入插件包</div>
                    </li>
                    <li><a href="/article/1899214071232786432.htm"
                           title="Android 碎片视图生命周期与按钮事件处理" target="_blank">Android 碎片视图生命周期与按钮事件处理</a>
                        <span class="text-muted">t0_54manong</span>
<a class="tag" taget="_blank" href="/search/android/1.htm">android</a><a class="tag" taget="_blank" href="/search/%E4%B8%AA%E4%BA%BA%E5%BC%80%E5%8F%91/1.htm">个人开发</a>
                        <div>在Android开发中,Fragment(碎片)是一个重要的组件,常用于创建多窗格UI或动态修改UI部分内容。本文将通过一个实例,探讨如何在Fragment中正确地设置按钮点击事件,并解释为什么在不同生命周期方法中设置监听器会导致不同的结果。问题描述假设你正在开发一个应用,包含一个菜单界面,其中有一个按钮用于从某个Fragment跳转到数据输入布局。按钮点击事件却无法响应,日志也没有任何输出。示例</div>
                    </li>
                    <li><a href="/article/1899208640812871680.htm"
                           title="android悬浮窗服务卡死,Android 悬浮窗兼容问题谈" target="_blank">android悬浮窗服务卡死,Android 悬浮窗兼容问题谈</a>
                        <span class="text-muted">热爱护肤的刘博士</span>
<a class="tag" taget="_blank" href="/search/android%E6%82%AC%E6%B5%AE%E7%AA%97%E6%9C%8D%E5%8A%A1%E5%8D%A1%E6%AD%BB/1.htm">android悬浮窗服务卡死</a>
                        <div>悬浮窗应该算各大厂商最先开始对应用下手的地方。悬浮窗之所以讨人厌同样是因为被滥用,就像狗皮膏药一样贴在屏幕的上下左右,不管切换到哪个应用始终显示在最上层。悬浮窗的需求有点从电脑端延续的味道,以前桌面上经常跑出来个狮子,有个悬浮球,或者歌词。但那个时候占用桌面面积小,相比手机屏幕尺寸,现在的悬浮窗很容易覆盖住真正内容。那Android上面悬浮窗最初设计是想解决什么问题呢?悬浮窗也即一个Window。</div>
                    </li>
                    <li><a href="/article/1899208388533874688.htm"
                           title="android实现全局悬浮窗,android 系统级的悬浮窗实现" target="_blank">android实现全局悬浮窗,android 系统级的悬浮窗实现</a>
                        <span class="text-muted">钟程杰</span>
<a class="tag" taget="_blank" href="/search/android%E5%AE%9E%E7%8E%B0%E5%85%A8%E5%B1%80%E6%82%AC%E6%B5%AE%E7%AA%97/1.htm">android实现全局悬浮窗</a>
                        <div>android系统级悬浮球的实现流程当我们在使用的app的时候,如果需要实时观测到某个功能的实时进度并且不影响其他的操作的时候或者不影响使用其他应用的时候,系统级的悬浮球是个非常不错的选择。首先我们需要创建一条Service服务用来承载悬浮球。publicclassQueueUpFloatServiceextendsService{/***启动服务并传值**@paramactivity启动服务的a</div>
                    </li>
                    <li><a href="/article/1899205612932231168.htm"
                           title="Android 视图切换的艺术" target="_blank">Android 视图切换的艺术</a>
                        <span class="text-muted">t0_54manong</span>
<a class="tag" taget="_blank" href="/search/android/1.htm">android</a><a class="tag" taget="_blank" href="/search/%E4%B8%AA%E4%BA%BA%E5%BC%80%E5%8F%91/1.htm">个人开发</a>
                        <div>引言在现代移动应用开发中,用户界面的流畅与视觉效果常常决定了应用的用户体验。特别是在横向滑动列表中,如何让用户能够直观地感知到当前选中的项,是一个值得探讨的问题。本文将详细介绍如何在Android应用中实现一个RecyclerView,根据其滑动位置动态改变项目的布局,使其在居中时变得更加突出。实现思路首先,我们需要明白,标准的RecyclerView并不直接提供检测项居中的方法。因此,我们需要采</div>
                    </li>
                    <li><a href="/article/1899201194912444416.htm"
                           title="Flutter开发:使用SafeArea(安全区域)" target="_blank">Flutter开发:使用SafeArea(安全区域)</a>
                        <span class="text-muted">三掌柜666</span>
<a class="tag" taget="_blank" href="/search/Flutter%E5%BC%80%E5%8F%91/1.htm">Flutter开发</a><a class="tag" taget="_blank" href="/search/flutter/1.htm">flutter</a><a class="tag" taget="_blank" href="/search/%E5%AE%89%E5%85%A8/1.htm">安全</a><a class="tag" taget="_blank" href="/search/ios/1.htm">ios</a>
                        <div>前言在Flutter开发中,对于各种手机机型的适配是一个非常重要的事情,尤其是Android系统的机型太多太杂,适配起来不是易事,而且对于iOS系统的iPhone手机的“刘海”适配也是关键的一个知识点。那么本篇博文就来分享一下关于SafeArea的使用,SafeArea也是各种稀奇古怪不规则的屏幕适配的最佳利器,方便查阅使用。原理SafeArea是通过MediaQuery来检测屏幕尺寸,让应用程序</div>
                    </li>
                    <li><a href="/article/1899200185628684288.htm"
                           title="【Android】setText调用导致的悬浮窗抖动问题" target="_blank">【Android】setText调用导致的悬浮窗抖动问题</a>
                        <span class="text-muted">aaajj</span>
<a class="tag" taget="_blank" href="/search/Android/1.htm">Android</a><a class="tag" taget="_blank" href="/search/android/1.htm">android</a>
                        <div>在Android13中,有这么一个bug,写一个可以拖到的悬浮窗,这个悬浮窗里有TextView,在拖到某个位置后,再调用TextView的setText方法,会发现出现了一个窗口动画,悬浮窗跳到了起始位置,从开始的位置又滑动到当前位置,看起来就是出现了一个跳动。试验例子packagecom.example.testfloatview;importandroid.app.Service;impor</div>
                    </li>
                    <li><a href="/article/1899188957552373760.htm"
                           title="双人成行(It Takes Two)移植版 for Mac v1.0.0.2 支持M、Intel芯片" target="_blank">双人成行(It Takes Two)移植版 for Mac v1.0.0.2 支持M、Intel芯片</a>
                        <span class="text-muted">Macdo_cn</span>
<a class="tag" taget="_blank" href="/search/macos/1.htm">macos</a>
                        <div>游戏介绍《双人成行》(ItTakesTwo)是一款由HazelightStudios开发并由ElectronicArts发行的合作冒险游戏。它于2021年3月发布,迅速成为广受好评的游戏,特别是在多人合作游戏领域。该游戏强调双人合作玩法,玩家需要与另一名玩家共同解决一系列富有挑战性的谜题,体验一个充满创意和情感的故事。游戏概述:在《双人成行》中,玩家将扮演两位主角——Cody和May,两人是一个正</div>
                    </li>
                    <li><a href="/article/1899159201821814784.htm"
                           title="Android 线程池实战指南:高效管理多线程任务" target="_blank">Android 线程池实战指南:高效管理多线程任务</a>
                        <span class="text-muted">tangweiguo03051987</span>
<a class="tag" taget="_blank" href="/search/android/1.htm">android</a><a class="tag" taget="_blank" href="/search/%E7%BA%BF%E7%A8%8B%E6%B1%A0/1.htm">线程池</a>
                        <div>在Android开发中,线程池的使用非常重要,尤其是在需要处理大量异步任务时。线程池可以有效地管理线程资源,避免频繁创建和销毁线程带来的性能开销。以下是线程池的使用方法和最佳实践。1.线程池的基本使用(1)创建线程池Android提供了Executors工厂类来创建常见的线程池,也可以通过ThreadPoolExecutor自定义线程池。示例:使用Executors创建线程池//创建一个固定大小的</div>
                    </li>
                    <li><a href="/article/1899156300894367744.htm"
                           title="Android Retrofit 框架注解定义与解析模块深度剖析(一)" target="_blank">Android Retrofit 框架注解定义与解析模块深度剖析(一)</a>
                        <span class="text-muted">&有梦想的咸鱼&</span>
<a class="tag" taget="_blank" href="/search/Android/1.htm">Android</a><a class="tag" taget="_blank" href="/search/Retrofit%E5%8E%9F%E7%90%86/1.htm">Retrofit原理</a><a class="tag" taget="_blank" href="/search/android/1.htm">android</a><a class="tag" taget="_blank" href="/search/retrofit/1.htm">retrofit</a>
                        <div>一、引言在现代Android和Java开发中,网络请求是不可或缺的一部分。Retrofit作为Square公司开源的一款强大的类型安全的HTTP客户端,凭借其简洁易用的API和高效的性能,在开发者社区中广受欢迎。Retrofit的核心特性之一便是通过注解来定义HTTP请求,这种方式使得代码更加清晰、易读且易于维护。本文将深入Retrofit框架的源码,对其注解定义与解析模块进行全面且细致的分析,揭</div>
                    </li>
                    <li><a href="/article/1899155796445425664.htm"
                           title="2015-4-26分享的pdf" target="_blank">2015-4-26分享的pdf</a>
                        <span class="text-muted">qq2011705918</span>
<a class="tag" taget="_blank" href="/search/IT/1.htm">IT</a>
                        <div>iOS传感器应用开发最佳实践_PDF电子书下载带书签目录完整版http://pan.baidu.com/s/1dDtSP2LNode应用程序构建使用MongoDB和Backbone_PDF电子书下载带书签目录完整版http://pan.baidu.com/s/1c04KnNMPhoneGap移动应用开发手册_PDF电子书下载带书签目录完整版http://pan.baidu.com/s/1mgssE</div>
                    </li>
                    <li><a href="/article/1899144577269428224.htm"
                           title="React Native开发之调试" target="_blank">React Native开发之调试</a>
                        <span class="text-muted">xiangzhihong8</span>
<a class="tag" taget="_blank" href="/search/React/1.htm">React</a><a class="tag" taget="_blank" href="/search/Native/1.htm">Native</a><a class="tag" taget="_blank" href="/search/command/1.htm">command</a><a class="tag" taget="_blank" href="/search/native/1.htm">native</a><a class="tag" taget="_blank" href="/search/%E8%B0%83%E8%AF%95/1.htm">调试</a>
                        <div>在做ReactNative开发时,少不了的需要对ReactNative程序进行调试。调试程序是每一位开发者的基本功,高效的调试不仅能提高开发效率,也能降低Bug率。DeveloperMenuAndroid模拟器:可以通过Command⌘+M快捷键来快速打开DeveloperMenu。也可以通过模拟器上的菜单键来打开。iOS模拟器:可以通过Command⌘+D快捷键来快速打开DeveloperMen</div>
                    </li>
                    <li><a href="/article/1899138274493001728.htm"
                           title="「MySQL 数据库优化」降低存储与查询成本的最佳实践" target="_blank">「MySQL 数据库优化」降低存储与查询成本的最佳实践</a>
                        <span class="text-muted">网罗开发</span>
<a class="tag" taget="_blank" href="/search/python%E9%9B%86/1.htm">python集</a><a class="tag" taget="_blank" href="/search/%E7%BB%88%E7%AB%AF%E9%9B%86/1.htm">终端集</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E5%BA%93/1.htm">数据库</a><a class="tag" taget="_blank" href="/search/mysql/1.htm">mysql</a>
                        <div>网罗开发(小红书、快手、视频号同名)  大家好,我是展菲,目前在上市企业从事人工智能项目研发管理工作,平时热衷于分享各种编程领域的软硬技能知识以及前沿技术,包括iOS、前端、HarmonyOS、Java、Python等方向。在移动端开发、鸿蒙开发、物联网、嵌入式、云原生、开源等领域有深厚造诣。图书作者:《ESP32-C3物联网工程开发实战》图书作者:《SwiftUI入门,进阶与实战》超级个体:CO</div>
                    </li>
                    <li><a href="/article/1899122137160019968.htm"
                           title="windows11家庭版安装ubuntu子系统训练深度模型" target="_blank">windows11家庭版安装ubuntu子系统训练深度模型</a>
                        <span class="text-muted">吃水果不削皮</span>
<a class="tag" taget="_blank" href="/search/ubuntu/1.htm">ubuntu</a><a class="tag" taget="_blank" href="/search/linux/1.htm">linux</a><a class="tag" taget="_blank" href="/search/windows/1.htm">windows</a>
                        <div>文章目录环境准备前提条件安装环境安装Hyper-V安装Linux分发版升级WSL内核启用虚拟机功能安装ubuntu24.04安装桌面环境安装远程控制软件xrdp从Windows启动桌面版Ubuntu环境准备前提条件windows机器需要支持虚拟化,并且需要在BIOS中开启虚拟化技术,因为WSL2基于hyper-V,查看是否开启虚拟化:按住Windows+R输入cmd打开命令行,输入systemin</div>
                    </li>
                    <li><a href="/article/1899121000621076480.htm"
                           title="Android 加解密算法工具类封装:AES、RSA、MD5 一站式解决方案" target="_blank">Android 加解密算法工具类封装:AES、RSA、MD5 一站式解决方案</a>
                        <span class="text-muted">tangweiguo03051987</span>
<a class="tag" taget="_blank" href="/search/android/1.htm">android</a><a class="tag" taget="_blank" href="/search/%E7%AE%97%E6%B3%95/1.htm">算法</a><a class="tag" taget="_blank" href="/search/AES/1.htm">AES</a><a class="tag" taget="_blank" href="/search/DES/1.htm">DES</a><a class="tag" taget="_blank" href="/search/MD5/1.htm">MD5</a><a class="tag" taget="_blank" href="/search/JAVA/1.htm">JAVA</a>
                        <div>在Android开发中,数据的安全性非常重要,尤其是敏感数据的存储和传输。为了实现数据加密和解密,我们可以封装一个通用的加解密工具类,支持常见的加密算法(如AES、RSA、DES等)。以下是一个基于AES对称加密算法的工具类封装示例,同时提供扩展性以支持其他算法。AES加解密工具类封装AES(AdvancedEncryptionStandard)是一种对称加密算法,加密和解密使用相同的密钥。以下是</div>
                    </li>
                    <li><a href="/article/1899116967214772224.htm"
                           title="Android paging prepend前置加载" target="_blank">Android paging prepend前置加载</a>
                        <span class="text-muted">stevenzqzq</span>
<a class="tag" taget="_blank" href="/search/android/1.htm">android</a>
                        <div>一代码示例lifecycleScope.launch{repeatOnLifecycle(Lifecycle.State.STARTED){articleAdapter.loadStateFlow.collect{binding.prependProgress.isVisible=it.source.prependisLoadingbinding.appendProgress.isVisible=</div>
                    </li>
                    <li><a href="/article/1899116967638396928.htm"
                           title="android paging LoadStates状态说明" target="_blank">android paging LoadStates状态说明</a>
                        <span class="text-muted">stevenzqzq</span>
<a class="tag" taget="_blank" href="/search/android/1.htm">android</a>
                        <div>一publicdataclassLoadStates(/**[LoadState]correspondingto[LoadType.REFRESH]loads.*/publicvalrefresh:LoadState,/**[LoadState]correspondingto[LoadType.PREPEND]loads.*/publicvalprepend:LoadState,/**[LoadS</div>
                    </li>
                    <li><a href="/article/1899116968229793792.htm"
                           title="android okhttp几种日志拦截级别区别" target="_blank">android okhttp几种日志拦截级别区别</a>
                        <span class="text-muted">stevenzqzq</span>
<a class="tag" taget="_blank" href="/search/android/1.htm">android</a><a class="tag" taget="_blank" href="/search/okhttp/1.htm">okhttp</a>
                        <div>一说明1代码enumclassLevel{/**Nologs.*/NONE,/***Logsrequestandresponselines.**Example:*```*-->POST/greetinghttp/1.1(3-bytebody)**POST/greetinghttp/1.1*Host:example.com*Content-Type:plain/text*Content-Length</div>
                    </li>
                                <li><a href="/article/32.htm"
                                       title="对于规范和实现,你会混淆吗?" target="_blank">对于规范和实现,你会混淆吗?</a>
                                    <span class="text-muted">yangshangchuan</span>
<a class="tag" taget="_blank" href="/search/HotSpot/1.htm">HotSpot</a>
                                    <div>昨晚和朋友聊天,喝了点咖啡,由于我经常喝茶,很长时间没喝咖啡了,所以失眠了,于是起床读JVM规范,读完后在朋友圈发了一条信息: 
 
 JVM Run-Time Data Areas:The Java Virtual Machine defines various run-time data areas that are used during execution of a program. So</div>
                                </li>
                                <li><a href="/article/159.htm"
                                       title="android 网络" target="_blank">android 网络</a>
                                    <span class="text-muted">百合不是茶</span>
<a class="tag" taget="_blank" href="/search/%E7%BD%91%E7%BB%9C/1.htm">网络</a>
                                    <div>android的网络编程和java的一样没什么好分析的都是一些死的照着写就可以了,所以记录下来  方便查找   ,  服务器使用的是TomCat 
  
服务器代码;  servlet的使用需要在xml中注册 
package servlet;

import java.io.IOException;
import java.util.Arr</div>
                                </li>
                                <li><a href="/article/286.htm"
                                       title="[读书笔记]读法拉第传" target="_blank">[读书笔记]读法拉第传</a>
                                    <span class="text-muted">comsci</span>
<a class="tag" taget="_blank" href="/search/%E8%AF%BB%E4%B9%A6%E7%AC%94%E8%AE%B0/1.htm">读书笔记</a>
                                    <div> 
 
      1831年的时候,一年可以赚到1000英镑的人..应该很少的... 
 
      要成为一个科学家,没有足够的资金支持,很多实验都无法完成 
 
      但是当钱赚够了以后....就不能够一直在商业和市场中徘徊......</div>
                                </li>
                                <li><a href="/article/413.htm"
                                       title="随机数的产生" target="_blank">随机数的产生</a>
                                    <span class="text-muted">沐刃青蛟</span>
<a class="tag" taget="_blank" href="/search/%E9%9A%8F%E6%9C%BA%E6%95%B0/1.htm">随机数</a>
                                    <div>c++中阐述随机数的方法有两种: 
  
一是产生假随机数(不管操作多少次,所产生的数都不会改变) 
  
       这类随机数是使用了默认的种子值产生的,所以每次都是一样的。 
  
	//默认种子
	for (int i = 0; i < 5; i++)
	{
		cout<<</div>
                                </li>
                                <li><a href="/article/540.htm"
                                       title="PHP检测函数所在的文件名" target="_blank">PHP检测函数所在的文件名</a>
                                    <span class="text-muted">IT独行者</span>
<a class="tag" taget="_blank" href="/search/PHP/1.htm">PHP</a><a class="tag" taget="_blank" href="/search/%E5%87%BD%E6%95%B0/1.htm">函数</a>
                                    <div>很简单的功能,用到PHP中的反射机制,具体使用的是ReflectionFunction类,可以获取指定函数所在PHP脚本中的具体位置。 创建引用脚本。 
代码: 
     
[php]   
view plain 
copy    
 
 // Filename: functions.php    
 <?php&nbs</div>
                                </li>
                                <li><a href="/article/667.htm"
                                       title="银行各系统功能简介" target="_blank">银行各系统功能简介</a>
                                    <span class="text-muted">文强chu</span>
<a class="tag" taget="_blank" href="/search/%E9%87%91%E8%9E%8D/1.htm">金融</a>
                                    <div>银行各系统功能简介         业务系统   核心业务系统     业务功能包括:总账管理、卡系统管理、客户信息管理、额度控管、存款、贷款、资金业务、国际结算、支付结算、对外接口等       清分清算系统     以清算日期为准,将账务类交易、非账务类交易的手续费、代理费、网络服务费等相关费用,按费用类型计算应收、应付金额,经过清算人员确认后上送核心系统完成结算的过程       国际结算系</div>
                                </li>
                                <li><a href="/article/794.htm"
                                       title="Python学习1(pip django 安装以及第一个project)" target="_blank">Python学习1(pip django 安装以及第一个project)</a>
                                    <span class="text-muted">小桔子</span>
<a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/django/1.htm">django</a><a class="tag" taget="_blank" href="/search/pip/1.htm">pip</a>
                                    <div>    最近开始学习python,要安装个pip的工具。听说这个工具很强大,安装了它,在安装第三方工具的话so easy!然后也下载了,按照别人给的教程开始安装,奶奶的怎么也安装不上! 
第一步:官方下载pip-1.5.6.tar.gz, https://pypi.python.org/pypi/pip easy! 
第二部:解压这个压缩文件,会看到一个setup.p</div>
                                </li>
                                <li><a href="/article/921.htm"
                                       title="php 数组" target="_blank">php 数组</a>
                                    <span class="text-muted">aichenglong</span>
<a class="tag" taget="_blank" href="/search/PHP/1.htm">PHP</a><a class="tag" taget="_blank" href="/search/%E6%8E%92%E5%BA%8F/1.htm">排序</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E7%BB%84/1.htm">数组</a><a class="tag" taget="_blank" href="/search/%E5%BE%AA%E7%8E%AF/1.htm">循环</a><a class="tag" taget="_blank" href="/search/%E5%A4%9A%E7%BB%B4%E6%95%B0%E7%BB%84/1.htm">多维数组</a>
                                    <div>1 php中的创建数组 
 $product = array('tires','oil','spark');//array()实际上是语言结构而不  是函数 
2 如果需要创建一个升序的排列的数字保存在一个数组中,可以使用range()函数来自动创建数组 
 $numbers=range(1,10)//1 2 3 4 5 6 7 8 9 10 
 $numbers=range(1,10,</div>
                                </li>
                                <li><a href="/article/1048.htm"
                                       title="安装python2.7" target="_blank">安装python2.7</a>
                                    <span class="text-muted">AILIKES</span>
<a class="tag" taget="_blank" href="/search/python/1.htm">python</a>
                                    <div>安装python2.7 
1、下载可从 http://www.python.org/进行下载#wget https://www.python.org/ftp/python/2.7.10/Python-2.7.10.tgz 
2、复制解压 
#mkdir -p /opt/usr/python 
#cp  /opt/soft/Python-2</div>
                                </li>
                                <li><a href="/article/1175.htm"
                                       title="java异常的处理探讨" target="_blank">java异常的处理探讨</a>
                                    <span class="text-muted">百合不是茶</span>
<a class="tag" taget="_blank" href="/search/JAVA%E5%BC%82%E5%B8%B8/1.htm">JAVA异常</a>
                                    <div>//java异常  
/* 
1,了解java 中的异常处理机制,有三种操作 
a,声明异常  
b,抛出异常  
c,捕获异常 
2,学会使用try-catch-finally来处理异常 
3,学会如何声明异常和抛出异常 
4,学会创建自己的异常 
  
*/ 
  
//2,学会使用try-catch-finally来处理异常 
  </div>
                                </li>
                                <li><a href="/article/1302.htm"
                                       title="getElementsByName实例" target="_blank">getElementsByName实例</a>
                                    <span class="text-muted">bijian1013</span>
<a class="tag" taget="_blank" href="/search/element/1.htm">element</a>
                                    <div>实例1: 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/x</div>
                                </li>
                                <li><a href="/article/1429.htm"
                                       title="探索JUnit4扩展:Runner" target="_blank">探索JUnit4扩展:Runner</a>
                                    <span class="text-muted">bijian1013</span>
<a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/%E5%8D%95%E5%85%83%E6%B5%8B%E8%AF%95/1.htm">单元测试</a><a class="tag" taget="_blank" href="/search/JUnit/1.htm">JUnit</a>
                                    <div>        参加敏捷培训时,教练提到Junit4的Runner和Rule,于是特上网查一下,发现很多都讲的太理论,或者是举的例子实在是太牵强。多搜索了几下,搜索到两篇我觉得写的非常好的文章。 
        文章地址:http://www.blogjava.net/jiangshachina/archive/20</div>
                                </li>
                                <li><a href="/article/1556.htm"
                                       title="[MongoDB学习笔记二]MongoDB副本集" target="_blank">[MongoDB学习笔记二]MongoDB副本集</a>
                                    <span class="text-muted">bit1129</span>
<a class="tag" taget="_blank" href="/search/mongodb/1.htm">mongodb</a>
                                    <div>1. 副本集的特性 
  1)一台主服务器(Primary),多台从服务器(Secondary) 
  2)Primary挂了之后,从服务器自动完成从它们之中选举一台服务器作为主服务器,继续工作,这就解决了单点故障,因此,在这种情况下,MongoDB集群能够继续工作 
  3)挂了的主服务器恢复到集群中只能以Secondary服务器的角色加入进来 
  
2</div>
                                </li>
                                <li><a href="/article/1683.htm"
                                       title="【Spark八十一】Hive in the spark assembly" target="_blank">【Spark八十一】Hive in the spark assembly</a>
                                    <span class="text-muted">bit1129</span>
<a class="tag" taget="_blank" href="/search/assembly/1.htm">assembly</a>
                                    <div>Spark SQL supports most commonly used features of HiveQL. However, different HiveQL statements are executed in different manners: 
 
  1. DDL statements (e.g. CREATE TABLE, DROP TABLE, etc.)</div>
                                </li>
                                <li><a href="/article/1810.htm"
                                       title="Nginx问题定位之监控进程异常退出" target="_blank">Nginx问题定位之监控进程异常退出</a>
                                    <span class="text-muted">ronin47</span>

                                    <div>nginx在运行过程中是否稳定,是否有异常退出过?这里总结几项平时会用到的小技巧。 
1. 在error.log中查看是否有signal项,如果有,看看signal是多少。 
比如,这是一个异常退出的情况: 
$grep signal error.log

2012/12/24 16:39:56 [alert] 13661#0: worker process 13666 exited on s</div>
                                </li>
                                <li><a href="/article/1937.htm"
                                       title="No grammar constraints (DTD or XML schema).....两种解决方法" target="_blank">No grammar constraints (DTD or XML schema).....两种解决方法</a>
                                    <span class="text-muted">byalias</span>
<a class="tag" taget="_blank" href="/search/xml/1.htm">xml</a>
                                    <div>方法一:常用方法   关闭XML验证 
工具栏:windows => preferences => xml => xml files => validation => Indicate when no grammar is specified:选择Ignore即可。 
 
方法二:(个人推荐) 
添加 内容如下 
<?xml version=</div>
                                </li>
                                <li><a href="/article/2064.htm"
                                       title="Netty源码学习-DefaultChannelPipeline" target="_blank">Netty源码学习-DefaultChannelPipeline</a>
                                    <span class="text-muted">bylijinnan</span>
<a class="tag" taget="_blank" href="/search/netty/1.htm">netty</a>
                                    <div>package com.ljn.channel;

/**
 * ChannelPipeline采用的是Intercepting Filter 模式
 * 但由于用到两个双向链表和内部类,这个模式看起来不是那么明显,需要仔细查看调用过程才发现
 * 
 * 下面对ChannelPipeline作一个模拟,只模拟关键代码:
 */
public class Pipeline {
 </div>
                                </li>
                                <li><a href="/article/2191.htm"
                                       title="MYSQL数据库常用备份及恢复语句" target="_blank">MYSQL数据库常用备份及恢复语句</a>
                                    <span class="text-muted">chicony</span>
<a class="tag" taget="_blank" href="/search/mysql/1.htm">mysql</a>
                                    <div>  
备份MySQL数据库的命令,可以加选不同的参数选项来实现不同格式的要求。 
mysqldump -h主机 -u用户名 -p密码 数据库名 > 文件 
 
备份MySQL数据库为带删除表的格式,能够让该备份覆盖已有数据库而不需要手动删除原有数据库。 
mysqldump -–add-drop-table -uusername -ppassword databasename > ba</div>
                                </li>
                                <li><a href="/article/2318.htm"
                                       title="小白谈谈云计算--基于Google三大论文" target="_blank">小白谈谈云计算--基于Google三大论文</a>
                                    <span class="text-muted">CrazyMizzz</span>
<a class="tag" taget="_blank" href="/search/Google/1.htm">Google</a><a class="tag" taget="_blank" href="/search/%E4%BA%91%E8%AE%A1%E7%AE%97/1.htm">云计算</a><a class="tag" taget="_blank" href="/search/GFS/1.htm">GFS</a>
                                    <div>    之前在没有接触到云计算之前,只是对云计算有一点点模糊的概念,觉得这是一个很高大上的东西,似乎离我们大一的还很远。后来有机会上了一节云计算的普及课程吧,并且在之前的一周里拜读了谷歌三大论文。不敢说理解,至少囫囵吞枣啃下了一大堆看不明白的理论。现在就简单聊聊我对于云计算的了解。 
    我先说说GFS 
  &n</div>
                                </li>
                                <li><a href="/article/2445.htm"
                                       title="hadoop 平衡空间设置方法" target="_blank">hadoop 平衡空间设置方法</a>
                                    <span class="text-muted">daizj</span>
<a class="tag" taget="_blank" href="/search/hadoop/1.htm">hadoop</a><a class="tag" taget="_blank" href="/search/balancer/1.htm">balancer</a>
                                    <div>在hdfs-site.xml中增加设置balance的带宽,默认只有1M: 
<property> 
  <name>dfs.balance.bandwidthPerSec</name> 
    <value>10485760</value> 
    <description&g</div>
                                </li>
                                <li><a href="/article/2572.htm"
                                       title="Eclipse程序员要掌握的常用快捷键" target="_blank">Eclipse程序员要掌握的常用快捷键</a>
                                    <span class="text-muted">dcj3sjt126com</span>
<a class="tag" taget="_blank" href="/search/%E7%BC%96%E7%A8%8B/1.htm">编程</a>
                                    <div>   判断一个人的编程水平,就看他用键盘多,还是鼠标多。用键盘一是为了输入代码(当然了,也包括注释),再有就是熟练使用快捷键。   曾有人在豆瓣评
《卓有成效的程序员》:“人有多大懒,才有多大闲”。之前我整理了一个
程序员图书列表,目的也就是通过读书,让程序员变懒。     程序员作为特殊的群体,有的人可以这么懒,懒到事情都交给机器去做,而有的人又可以那么勤奋,每天都孜孜不倦得</div>
                                </li>
                                <li><a href="/article/2699.htm"
                                       title="Android学习之路" target="_blank">Android学习之路</a>
                                    <span class="text-muted">dcj3sjt126com</span>
<a class="tag" taget="_blank" href="/search/Android%E5%AD%A6%E4%B9%A0/1.htm">Android学习</a>
                                    <div>转自:http://blog.csdn.net/ryantang03/article/details/6901459 
以前有J2EE基础,接触JAVA也有两三年的时间了,上手Android并不困难,思维上稍微转变一下就可以很快适应。以前做的都是WEB项目,现今体验移动终端项目,让我越来越觉得移动互联网应用是未来的主宰。 
下面说说我学习Android的感受,我学Android首先是看MARS的视</div>
                                </li>
                                <li><a href="/article/2826.htm"
                                       title="java 遍历Map的四种方法" target="_blank">java 遍历Map的四种方法</a>
                                    <span class="text-muted">eksliang</span>
<a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/HashMap/1.htm">HashMap</a><a class="tag" taget="_blank" href="/search/java+%E9%81%8D%E5%8E%86Map%E7%9A%84%E5%9B%9B%E7%A7%8D%E6%96%B9%E6%B3%95/1.htm">java 遍历Map的四种方法</a>
                                    <div>转载请出自出处: 
http://eksliang.iteye.com/blog/2059996 
 
package com.ickes;

import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Map.Entry;
/**
 * 遍历Map的四种方式
</div>
                                </li>
                                <li><a href="/article/2953.htm"
                                       title="【精典】数据库相关相关" target="_blank">【精典】数据库相关相关</a>
                                    <span class="text-muted">gengzg</span>
<a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E5%BA%93/1.htm">数据库</a>
                                    <div>package C3P0; 
import java.sql.Connection; 
import java.sql.SQLException; 
import java.beans.PropertyVetoException; 
import com.mchange.v2.c3p0.ComboPooledDataSource; 
public class DBPool{       </div>
                                </li>
                                <li><a href="/article/3080.htm"
                                       title="自动补全" target="_blank">自动补全</a>
                                    <span class="text-muted">huyana_town</span>
<a class="tag" taget="_blank" href="/search/%E8%87%AA%E5%8A%A8%E8%A1%A5%E5%85%A8/1.htm">自动补全</a>
                                    <div><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml&quo</div>
                                </li>
                                <li><a href="/article/3207.htm"
                                       title="jquery在线预览PDF文件,打开PDF文件" target="_blank">jquery在线预览PDF文件,打开PDF文件</a>
                                    <span class="text-muted">天梯梦</span>
<a class="tag" taget="_blank" href="/search/jquery/1.htm">jquery</a>
                                    <div>最主要的是使用到了一个jquery的插件jquery.media.js,使用这个插件就很容易实现了。 
  
核心代码 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.</div>
                                </li>
                                <li><a href="/article/3334.htm"
                                       title="ViewPager刷新单个页面的方法" target="_blank">ViewPager刷新单个页面的方法</a>
                                    <span class="text-muted">lovelease</span>
<a class="tag" taget="_blank" href="/search/android/1.htm">android</a><a class="tag" taget="_blank" href="/search/viewpager/1.htm">viewpager</a><a class="tag" taget="_blank" href="/search/tag/1.htm">tag</a><a class="tag" taget="_blank" href="/search/%E5%88%B7%E6%96%B0/1.htm">刷新</a>
                                    <div>  使用ViewPager做滑动切换图片的效果时,如果图片是从网络下载的,那么再子线程中下载完图片时我们会使用handler通知UI线程,然后UI线程就可以调用mViewPager.getAdapter().notifyDataSetChanged()进行页面的刷新,但是viewpager不同于listview,你会发现单纯的调用notifyDataSetChanged()并不能刷新页面</div>
                                </li>
                                <li><a href="/article/3461.htm"
                                       title="利用按位取反(~)从复合枚举值里清除枚举值" target="_blank">利用按位取反(~)从复合枚举值里清除枚举值</a>
                                    <span class="text-muted">草料场</span>
<a class="tag" taget="_blank" href="/search/enum/1.htm">enum</a>
                                    <div>以 C# 中的 System.Drawing.FontStyle 为例。  
  
如果需要同时有多种效果, 
如:“粗体”和“下划线”的效果,可以用按位或(|) 
FontStyle style = FontStyle.Bold | FontStyle.Underline; 
  
如果需要去除 style 里的某一种效果, </div>
                                </li>
                                <li><a href="/article/3588.htm"
                                       title="Linux系统新手学习的11点建议" target="_blank">Linux系统新手学习的11点建议</a>
                                    <span class="text-muted">刘星宇</span>
<a class="tag" taget="_blank" href="/search/%E7%BC%96%E7%A8%8B/1.htm">编程</a><a class="tag" taget="_blank" href="/search/%E5%B7%A5%E4%BD%9C/1.htm">工作</a><a class="tag" taget="_blank" href="/search/linux/1.htm">linux</a><a class="tag" taget="_blank" href="/search/%E8%84%9A%E6%9C%AC/1.htm">脚本</a>
                                    <div>  随着Linux应用的扩展许多朋友开始接触Linux,根据学习Windwos的经验往往有一些茫然的感觉:不知从何处开始学起。这里介绍学习Linux的一些建议。 
 
  一、从基础开始:常常有些朋友在Linux论坛问一些问题,不过,其中大多数的问题都是很基础的。例如:为什么我使用一个命令的时候,系统告诉我找不到该目录,我要如何限制使用者的权限等问题,这些问题其实都不是很难的,只要了解了 Linu</div>
                                </li>
                                <li><a href="/article/3715.htm"
                                       title="hibernate dao层应用之HibernateDaoSupport二次封装" target="_blank">hibernate dao层应用之HibernateDaoSupport二次封装</a>
                                    <span class="text-muted">wangzhezichuan</span>
<a class="tag" taget="_blank" href="/search/DAO/1.htm">DAO</a><a class="tag" taget="_blank" href="/search/Hibernate/1.htm">Hibernate</a>
                                    <div>/** 
 * <p>方法描述:sql语句查询 返回List<Class> </p> 
 * <p>方法备注: Class 只能是自定义类 </p> 
 * @param calzz 
 * @param sql 
 * @return 
 * <p>创建人:王川</p> 
 * <p>创建时间:Jul</div>
                                </li>
                </ul>
            </div>
        </div>
    </div>

<div>
    <div class="container">
        <div class="indexes">
            <strong>按字母分类:</strong>
            <a href="/tags/A/1.htm" target="_blank">A</a><a href="/tags/B/1.htm" target="_blank">B</a><a href="/tags/C/1.htm" target="_blank">C</a><a
                href="/tags/D/1.htm" target="_blank">D</a><a href="/tags/E/1.htm" target="_blank">E</a><a href="/tags/F/1.htm" target="_blank">F</a><a
                href="/tags/G/1.htm" target="_blank">G</a><a href="/tags/H/1.htm" target="_blank">H</a><a href="/tags/I/1.htm" target="_blank">I</a><a
                href="/tags/J/1.htm" target="_blank">J</a><a href="/tags/K/1.htm" target="_blank">K</a><a href="/tags/L/1.htm" target="_blank">L</a><a
                href="/tags/M/1.htm" target="_blank">M</a><a href="/tags/N/1.htm" target="_blank">N</a><a href="/tags/O/1.htm" target="_blank">O</a><a
                href="/tags/P/1.htm" target="_blank">P</a><a href="/tags/Q/1.htm" target="_blank">Q</a><a href="/tags/R/1.htm" target="_blank">R</a><a
                href="/tags/S/1.htm" target="_blank">S</a><a href="/tags/T/1.htm" target="_blank">T</a><a href="/tags/U/1.htm" target="_blank">U</a><a
                href="/tags/V/1.htm" target="_blank">V</a><a href="/tags/W/1.htm" target="_blank">W</a><a href="/tags/X/1.htm" target="_blank">X</a><a
                href="/tags/Y/1.htm" target="_blank">Y</a><a href="/tags/Z/1.htm" target="_blank">Z</a><a href="/tags/0/1.htm" target="_blank">其他</a>
        </div>
    </div>
</div>
<footer id="footer" class="mb30 mt30">
    <div class="container">
        <div class="footBglm">
            <a target="_blank" href="/">首页</a> -
            <a target="_blank" href="/custom/about.htm">关于我们</a> -
            <a target="_blank" href="/search/Java/1.htm">站内搜索</a> -
            <a target="_blank" href="/sitemap.txt">Sitemap</a> -
            <a target="_blank" href="/custom/delete.htm">侵权投诉</a>
        </div>
        <div class="copyright">版权所有 IT知识库 CopyRight © 2000-2050 E-COM-NET.COM , All Rights Reserved.
<!--            <a href="https://beian.miit.gov.cn/" rel="nofollow" target="_blank">京ICP备09083238号</a><br>-->
        </div>
    </div>
</footer>
<!-- 代码高亮 -->
<script type="text/javascript" src="/static/syntaxhighlighter/scripts/shCore.js"></script>
<script type="text/javascript" src="/static/syntaxhighlighter/scripts/shLegacy.js"></script>
<script type="text/javascript" src="/static/syntaxhighlighter/scripts/shAutoloader.js"></script>
<link type="text/css" rel="stylesheet" href="/static/syntaxhighlighter/styles/shCoreDefault.css"/>
<script type="text/javascript" src="/static/syntaxhighlighter/src/my_start_1.js"></script>





</body>

</html>