澳门新浦京娱乐场网站-www.146.net-新浦京娱乐场官网
做最好的网站

小软件部分,介绍及其源码下载地址

 此次又新增了一些新的功能,直接接着上次的介绍吧

自己在空闲时分整合、编写了一款小软件程序,命名为魔法兔子,希望大家可以提出意见和指导,此篇文章主要为软件的部分截图和介绍。

1. WeChat 高仿微信

高仿微信,实现功能有: 好友之间文字聊天,表情,视频通话,语音, 语音电话,发 送文件等。
项目介绍及其源码下载地址:
http://www.jcodecraeer.com/a/opensource/2015/0619/3087.html

高仿微信

前言

暑假我在学校学习了一个月的时间 ,在这一个月期间我学习了关于安卓移动前端开发的一些简单的知识。之前我对安卓移动开发可谓是一窍不通,老师让我花前两周的时间来看了一本关于移动开发的书———《第一行代码》。就我个人而言感觉这本书非常的好,非常适合一个像我这样的菜鸟学习Java的移动开发,在这本书从下载开发工具到写完一个APP的发布都是非常的详细。但这本书里教的东西还是比较有局限的,仅适合初学者,很多都是需要自己去百度或者寻找各种书来解答。总而言之,在学校这一个月的时间我学到了很多,因为一个月的时间都是专心的学习一样东西,这个夏令营过得很有意义,以下是我这个月的学习成果。

LQRWeChat

仿最新版微信6.5.7(除图片选择器外)。本项目基于融云SDK,使用目前较火的 Rxjava Retrofit MVP Glide 技术开发。相比上个版本,加入发送位置消息,红包消息等功能。
项目地址:https://github.com/GitLqr/LQRWeChat

上次博客介绍地址:http://www.cnblogs.com/Liyuting/p/8540592.html

软件详情:

2. 知乎专栏App

第三方的 app,引用作者的描述:“最近一直在利用空余时间开发一个完 整的 App,名字就叫“专栏”。开发这个 App 的目的主要是为了练练手,熟悉
开发一个完整 App 的流 程。就像造房子,亲手打地基,搬砖头, 垒砖头,还自己装修(虽然装修的不好看)”项目介绍及其源码下载地
址:http://www.jcodecraeer.com/a/opensource/2015/0328/2657.html

知乎专栏App

常用控件的使用方法(参考书籍'第一行代码')

  1. TextView

修改布局如下:

<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <TextView
        android:id="@ id/text_view"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:textSize="24sp"
        android:textColor="#00ff00"
        android:text="jian shu"/>
</LinearLayout>
  • 在布局中添加TextView控件,它主要用于在界面上显示一段文本信息。
  • android:id 是给当前的元素定义一个唯一的标识符,之后可以在代码中对这个元素进行操作。
  • android:layout_width和android:layout_height指定了控件的宽度和高度,可选值有三种:match_parent、wrap_content和fill_parent,其中match_parent和fill_parent的意义相同,现在官方更加推荐使用 match_parent,match_parent 表示让当前的控件的大小和父布局的大小一样,也就是由父布局来决定当前控件的大小,wrap_content 表示让当前控件的大小能包含住里面的内容,也就是由控件的内容决定控件的大小。
  • android:gravity是用来指定文件的对齐方式,可选值有: top 、botton、left、right、center 等,可以用“ | ”来同时指定多个值,这里我们指定center , 表示文字在垂直和水平方向上都居中对齐,如果控件中不添加这个属性,那么布局就默认TextView中的文字居左上角对齐。
  • android:textSize 和 android:textColor 表示更改TextView中文字的大小和颜色,Android的字体大小使用sp作为单位。
  • android:text 表示TextView 中显示的内容。

运行程序,效果如下:

澳门新浦京娱乐场网站 1

图一

  1. Button
    在布局中添加一个Button,如下:
     <Button
        android:id="@ id/button"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="Button"
        android:textAllCaps="false"/>
  • 其他属性在上面都已经介绍过了, android:textAllCaps 比较陌生,他的作用是对Button中的所有英文字母进行大小写转换的控制,如果不添加此书行,系统默认为进行大写转换。“false” 为禁用大写转换,
  • 可以在MainActivity中添加一个监听器,代码如下:
public class MainActivity extends AppCompatActivity {

   @Override
   protected void onCreate(Bundle savedInstanceState) {
       super.onCreate(savedInstanceState);
       setContentView(R.layout.activity_main);
       Button button = (Button) findViewById(R.id.button);
       button.setOnClickListener(new View.OnClickListener(){
           @Override
           public void onClick(View v) {
               Toast.makeText(MainActivity.this, "简书", Toast.LENGTH_SHORT).show();
           }
       });
   }
} 

点击Button按钮,效果如下图:

澳门新浦京娱乐场网站 2

图二

  1. EditText
    同样在布局中添加这个控件,代码如下:
<EditText
       android:id="@ id/edit_text"
       android:layout_width="match_parent"
       android:layout_height="wrap_content"
       android:hint="Welcome"
       android:maxLines="3"/>
  • EditText 允许用户在控件里输入和编辑内容,并可以在程序中对这些内容进行处理。
  • android:hint 属性指定了一段提示文本。
  • android:maxLines 指定了 EditText的最大行数,这里我们选最大3行,这样当输入的内容超过3行时,文本就会向上滚动,而 EditText 则不会向上拉伸。效果如下图:
![](https://upload-images.jianshu.io/upload_images/6538308-3c3e0cb3252fdeaf.png)

图三



![](https://upload-images.jianshu.io/upload_images/6538308-0c5fd937e1fe385f.png)

图四

4.ImageView
同样在布局中添加此控件:

 <ImageView
       android:id="@ id/image_view"
       android:layout_width="wrap_content"
       android:layout_height="wrap_content"
       android:src="@drawable/image1"/>
  • ImageView 是一个展示图片的控件。
  • android:src为添加照片的属性,准备两张照片放在 drawable文件下。
    我们可以动态的更改 ImageView 中的图片,通过修改MainActivity:
public class MainActivity extends AppCompatActivity {

  private ImageView imageView;

  @Override
  protected void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      setContentView(R.layout.activity_main);
      Button button = (Button) findViewById(R.id.button);
      imageView = (ImageView) findViewById(R.id.image_view);
      button.setOnClickListener(new View.OnClickListener(){
          @Override
          public void onClick(View v) {
              imageView.setImageResource(R.drawable.image2);
          }
      });
  }
}

运行程序,点击Button 后发现图片切换了,如下图:

澳门新浦京娱乐场网站 3

图五

澳门新浦京娱乐场网站 4

图六

修改布局和MainActivity :

    <ProgressBar
        android:id="@ id/progress_bar"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"/>

public class MainActivity extends AppCompatActivity {

    private ImageView imageView;
    private ProgressBar progressBar;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        Button button = (Button) findViewById(R.id.button);
        imageView = (ImageView) findViewById(R.id.image_view);
        progressBar = (ProgressBar) findViewById(R.id.progress_bar);
        button.setOnClickListener(new View.OnClickListener(){
            @Override
            public void onClick(View v) {
                if (progressBar.getVisibility() == View.GONE) {
                    progressBar.setVisibility(View.VISIBLE);
                } else {
                    progressBar.setVisibility(View.GONE);
                }
            }
        });
    }
}

效果如下图,可以通过点击Button按钮来控制进度条的显示。

澳门新浦京娱乐场网站 5

澳门新浦京娱乐场网站,图七

菜鸟新闻

菜鸟新闻 客户端是一个仿照36Kr官方,实 时抓取36Kr官网数据的资讯类新闻客户端。
包括首页新闻,详情,发现,活动,实时数据抓取,侧滑效果,第三方登录以及分享,消息推送等相关功能客户端。
课程地址: http://www.cniao5.com/clazz/view/10076.html视频下载链接: http://pan.baidu.com/s/1eQLyQxc 密码:3ts1
项目源码下载地址:https://github.com/yxs666/cniao5-news

这次新增了三个功能,具体如下:

1.首先是登录,注册界面。

3. GankMeiZhi

一个妹子图项目。通过这个项目,你可能可以学习到的内容有: 多渠 道打包 使用
ORM 快速操作数据库 访问网络,简单解析 HTML RecyclerView 瀑布流的使用 RecyclerView 底部加载更多的简单实现 Material Design 的下拉刷

使用最新的 Design 兼容库 使用 5.0 的 Share 组件或元素动画 使用 Toolbar 完全替代 ActionBar。
使用说明:
本项目包含以下知识点:

  • Butter Knife:通过注解绑定 View
  • Realm在:数据库
  • RecyclerView 及 StaggeredGridLayoutManager 瀑布流布局
  • IntentService 实现的后台网络请求
  • Android Design Support Library 中的 CoordinatorLayout
  • 使用 Jsoup 解析 HTML

使用要求

  • Android 4.4 以上

开发要求

  • Gradle 2.4 (或使用内置的 ./gradlew)
  • Android Studio 1.3 RC1 以上 (canary channel)
  • Android 5.1.X (API 22) SDK Platform
  • Android Build-tools 23.0.0 rc3
  • Android Support Repository
    项目介绍及其源码下载地址:http://www.jcodecraeer.com/a/opensource/2015/0712/3176.html

GankMeiZhi

碎片与活动之间进行通信

  1. 碎片是一种可以嵌入在活动当中的UI片段,他能让程序更加合理和充分的利用大屏幕的空间。虽然碎片都是嵌入在活动中显示的,可是实际上它们的关系并没有那么密切。碎片和活动都是各自存在于一个独立的类当中的,它们之间并没有那么明显的方式来直接进行通信。
  2. 为了方便碎片与活动之间进行通信,FramentManager提供了一个类似于findViewById()的方法,专门用于从布局文件中获取碎片的实例。
    这是在活动中调取碎片:调用FragmentManagerf中的indFragmentById()方法
RightFragment rightFragment = (RightFragment) getSupportFragmentManager().findFragmentById(R.id.right_fragment);

这是在碎片中调用活动:

MainActivity acivity = (MainActivity) getActivity();

快传

仿茄子快传的一款文件传输应用, 涉及到Socket通信,包括TCP,UDP通信
项目源码:https://github.com/mayubao/KuaiChuan

澳门新浦京娱乐场网站 6

可以注册自己的账号,后台是腾讯云服务器,数据库采用了SQL Server,运用了Winform编写。

4. 高仿jiandan

高仿煎蛋的 app,数据是采用抓包分析出煎蛋的 api,离线缓存使用GreenDao 实现本地 Sqlite 缓存。 ps : 煎蛋是一个 2b 青年聚集地。
项目介绍及其源码下载地址:http://www.codesocang.com/gn/xiangmu/33662.html

高仿jiandan

提升ListView的运行效率

public View getView(int position, View converView, ViewGroup parent){
Fruit fruit = getItem(position);
View view = LayoutInflater.from(getContext()).inflate(resourceId,parent,false);
ImageView fruitImage = (ImageView) view.findViewById(R.id.furit_image);
TextView fruitName = (TextView) view.findViewById(R.id.furit_name);
fruitImage.setImageResource(fruit.getImageId());
fruitName.setText(fruit.getName());
return view;
}
1 . 以上的ListView的运行效率很低,因为在FruitAdapter的getView()方法中,每次都将布局重新加载一遍,当ListView快速滚动的时候,这就会成为性能的饿瓶颈。

 public View getView(int position, View converView, ViewGroup parent){
     Fruit fruit = getItem(position);
     View view;
     if (converView ==null){
         view = LayoutInflater.from(getContext()).inflate(resourceId,parent,false);
     } else {
         view = converView;
     }
     ImageView fruitImage = (ImageView) view.findViewById(R.id.furit_image);
     TextView fruitName = (TextView) view.findViewById(R.id.furit_name);
     fruitImage.setImageResource(fruit.getImageId());
     fruitName.setText(fruit.getName());
     return view;
 }

2 . 如果改为上述,现在我们可以在getView()方法中进行判断,如果cnvertView为null,则使用LayoutInfater去加载布局,如果不为null则直接对converView进行崇从用。这样就大大提高了ListView的运行效率,在快速滚动的时候也可以表现出更好的性能。

CoolShopping

一个仿拉手团购的购物App,采用Bmob后台实现短信验证码注册、登录、收藏、订单管理、自动更新等功能,数据抓取自拉手团购
项目地址:https://github.com/myxh/CoolShopping

一、网络聊天室

1)在注册界面填入正确的账号,密码,手机号,手机号验证码,和验证码。

5. Wegit

一个第三方的Github客户端,采用mvp架构。
项目介绍及其源码下载地址:http://www.jcodecraeer.com/a/opensource/2015/0818/3325.html

Wegit

GridView和Spinner的介绍

在最近的学习中,我接触了GridView、Spinner。下面我来对他们的简单介绍:

  1. GridView 是 DataGrid的后继控件,在.net framework 2 中,虽然还存在DataGrid,但是GridView已经走上了历史的前台,取代DataGrid的趋势已是势不可挡。GridView和DataGrid功能相似,都是在web页面中显示数据源中的数据,将数据源中的一行数据,也就是一条记录,显示为在web页面上输出表格中的一行。在https://baike.baidu.com/item/gridview/6027180?fr=aladdin 中有对GridView的简单介绍。
  • 要想实现GridView的显示,主要有三个步骤:1是准备数据源,2是新建适配器,3是加载适配器。

澳门新浦京娱乐场网站 7

图一

  • 但想要比较熟悉的了解和运用Gridview的话,单单有介绍还是不行的,还要有一些实例作参考。下面几个链接的实例都是比较简单的,对于像我这种初学者来说还是比较容易看懂的。
    http://www.cnblogs.com/zzw1994/p/5082591.html

    澳门新浦京娱乐场网站 8

    图二

http://blog.csdn.net/leichelle/article/details/7951290

  • 这里的实例分了三种情况,第一个是只显示图片的,第二个是显示图片文字的(这里的图片是Android系统自带的图片),第三个是显示自定义的图片文字。
  1. Spinner是一个提供了下拉列表样式的布局空控件,如下图所示:
![](https://upload-images.jianshu.io/upload_images/6538308-4cd1f6045a6080c4.png)

图三



我本次主要学习这个控件来对所选的学期进行一个下拉选择,代码如下:  
修改mainActivity.java
     protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        spinner = (Spinner) this.findViewById(R.id.spinner1);
        ArrayAdapter adapter = new ArrayAdapter(this,
                android.R.layout.simple_spinner_item, new String[] { " ","16-17-2", "16-17-1",
                "15_16-2","15_16-1","14_15-2","14_15-1","13_14-2"
                ,"13_14-1","12_13-2","12_13-1","11_12-2","11_12-1","10_11-2","10_11-1","09_10-2","09_10-1","08_09-2","08_09-1","07_08-2"
                ,"07_08-1","06_07-2","06_07-1","05_06-2","05_06-1","04_05-2","04_05-1","03_04-2","03_04-1","02_03-2","02_03-1","01_02-2"
                ,"01_02-1" });

        //设置下拉样式
        adapter.setDropDownViewResource(android.R.layout.simple_dropdown_item_1line);
        spinner.setAdapter(adapter);
    }

修改activity_main

        <Spinner
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:gravity="center"
            android:id="@ id/spinner1"
            android:layout_marginTop="40sp"/>

效果如下图

澳门新浦京娱乐场网站 9

图四

  • 上面我做的只是一个简单的下拉列表。 http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2015/0105/2264.html这里面的Spinner实例比较多也比较好。
  • 在布局过程中 ,可能会为不知道各种颜色相应的代码而苦恼,所以下面这个链接会为你提供所需的颜色代码。

http://www.114la.com/other/rgb.htm

如下图

澳门新浦京娱乐场网站 10

图五

bilibili

仿 bilibili 的客户端
项目地址:https://github.com/HotBitmapGG/bilibili-android-client

此功能涉及了Socket通信,运用服务端连接各个客户端,并实现客户端之间的沟通交流。

2)手机号验证码有效期为1分钟,短信服务来自腾讯云。

6. SimplifyReader

一款基于Google Material Design设计开发的Android客户端,包括新闻简读,图片浏览,视频爽看 ,音乐轻听以及二维码扫描五个子模块。项目采取的是MVP架构开发,由于还是摸索阶段,可能不是很规范。但基本上应该是这么个套路。
使用说明:

  • 模块分析

  • 新闻简读
    介绍:API使用的是凤凰新闻客户端的接口,我只是简单的获取了新闻的列表和详情数据,由于api和凤凰新闻客户端完全一致,鉴于侵权问题我就不开源出来了。至于接口是如何获取的?Google,百度,调试获取日志,我能说的只有这么多。
    功能:列表页使用自定义的ListView(自动加载更多)显示新闻列表,详情使用的是WebView加载,支持滑动返回。对于多图 新闻的处理,使用的和主流新闻客户端类似,滑动切换多张图片,可双指缩放图片大小!

  • 图片浏览
    介绍:API使用的是百度图片的搜索接口,由于网上有很多的开发者开源了这个接口,所以我也就放出来,如有侵权请及时告知。
    功能:列表页使用的瀑布流效果(增加了下拉刷新和上拉加载更多)详情页和列表页的切换增加了一个图片放大或缩小到指定位置的效果,图片也可以双指缩放!

  • 视频爽看
    介绍:API使用的是优酷开放平台的SDK,不过要吐槽的一点是,优酷的SDK真心不好用,还是Eclipse版本的,我是一点点移植到Android Studio平台的,但是它的接口还是很丰富的,好好的利用一下,还是能够做出一个优秀的APP的。
    功能:列表页使用了Google的CardView,简单的获取了一些视频的基本数据。播放页使用了优酷提供的视频播放器组件,传入视频ID就可以播放视频了,只要调通了SDK,其他的都是一些简单的数据获取!

  • 音乐轻听
    介绍:API获取的是豆瓣音乐的数据,由于也不是开放API,如有侵权请及时告知。
    功能:播放音乐的界面是我自定义的一个唱机的View,很多思路都是从网上学习借鉴过来的,自己重新造了个轮子。UI和网易云音乐对比的话,只能说是形似神不似了,没有人家做的细致!

  • 二维码扫描
    介绍:这个完全是我自己单独开发的类库,之前也有开源出来,这次又再一次重构优化,后期会单独剥离二维码扫描模块,做成类库和Demo的形式,提供Android Studio版本。
    功能:扫描界面使用xml进行布局,然后加入属性动画。这样布局更具有优势,更利于多屏幕适配。解码模块使用的是两个主流的开源库Zbar和ZXing,进过多次测试发现,ZBar虽然扫描效率和速度高于ZXing,但是经常扫描出错误的信息,可能由于太灵敏的缘故把,综合二者的优缺点还是建议使用ZXing来解码,并且这个项目还在长期维护更新!
    项目介绍及其源码下载地址: http://www.jcodecraeer.com/a/opensource/2015/0818/3324.html

SimplifyReader

56项App 介绍及其源码下载地址

在学习安卓的移动开发的时候,多看看一些开源的代码非常的有助于自己的提高,所以我在前人的总结下自己又总结了一遍可以学习借鉴的54个APP的开源代码。

StockChart

采用主流rxjava
retrofit
dagger2
框架,StockChart看股票的分时图,k线图。
项目地址:https://github.com/AndroidJiang/StockChart

澳门新浦京娱乐场网站 11

3)登录界面输入用户名和密码,登录成功后下次开启软件时会自动记录用户名,并可以手动选择是否记住密码。

7. StickerCamera

这是一款集成了相机,图片裁剪,给图片贴贴图打标签的APP。编译需要java8。
使用说明:
实现相机功能
实现对图片进行裁剪的功能
图片的滤镜功能
能为图片添加贴纸(贴纸可移动,放大,旋转)
能为图片添加标签(同样可以移动)
本地保存制作好的图片,并展示
较多的自定义控件,不错的项目架构
项目介绍及其源码下载地址:
http://www.jcodecraeer.com/a/opensource/2015/0729/3232.html

StickerCamera

1. WeChat 高仿微信

高仿微信,实现功能有: 好友之间文字聊天,表情,视频通话,语音, 语音电话,发 送文件等。
项目介绍及其源码下载地址:
http://www.jcodecraeer.com/a/opensource/2015/0619/3087.html

澳门新浦京娱乐场网站 12

高仿微信

Android精准计步器

项目地址:https://github.com/linglongxin24/DylanStepCount

 

澳门新浦京娱乐场网站 13

8. SmsCodeHelper

是由原「贝壳单词」团队开发的一款新的开源轻App. 它可以在手机接收到验证码短信的时候,自动浮现验证码,并自动复制验证码到用户的剪切板。当用户接收到短信验证码,只要长按验证码的输入框,粘贴验证码即可。
项目介绍及其源码下载地址:http://www.jcodecraeer.com/a/opensource/2015/0624/3102.html

SmsCodeHelper

2. 知乎专栏App

第三方的 app,引用作者的描述:“最近一直在利用空余时间开发一个完 整的 App,名字就叫“专栏”。开发这个 App 的目的主要是为了练练手,熟悉
开发一个完整 App 的流 程。就像造房子,亲手打地基,搬砖头, 垒砖头,还自己装修(虽然装修的不好看)”项目介绍及其源码下载地
址:http://www.jcodecraeer.com/a/opensource/2015/0328/2657.html

澳门新浦京娱乐场网站 14

知乎专栏App

菜鸟微博

菜鸟微博《通过对新浪微博开发案例的详细解析,讲解了一个完整的 Android 实际项目的开发过程。
有新浪微博的主要功能,有Toolbar,RecyclerView等最新控件的用法;各种快速开发框架的使用,比如 Glide,PhotoView ,EventBus ,OKHttp,pullToRefresh等。 学习视频 源码 视频中还会讲到MVP设计模式以及一些架构师的入门知识。
课程地址: http://www.cniao5.com/clazz/view/10075.html视频下载链接: http://pan.baidu.com/s/1gexq3VP 密码:f0t9
项目地址:https://github.com/yxs666/cniao5-weibo

 二、天气预报

 澳门新浦京娱乐场网站 15

9. Notes

一款基于Material Design 的开源笔记本应用,Material Design风格,采用抽屉式菜单,悬浮滑动按钮,点击控件时的水波纹效果,状态栏透明使得与应用融为一体,用户即使在Android L系统以下的手机也能感受到良好的用户体验 用文字记录身边随时发生的事情,或者你的待办事项 同步,同步需要你在手机设置里面添加一个邮箱,并作为你的同步账号,提交到服务器。
项目介绍及其源码下载地址:http://www.jcodecraeer.com/a/opensource/2015/0613/3037.html

Notes

3. GankMeiZhi

一个妹子图项目。通过这个项目,你可能可以学习到的内容有: 多渠 道打包 使用
ORM 快速操作数据库 访问网络,简单解析 HTML RecyclerView 瀑布流的使用 RecyclerView 底部加载更多的简单实现 Material Design 的下拉刷

使用最新的 Design 兼容库 使用 5.0 的 Share 组件或元素动画 使用 Toolbar 完全替代 ActionBar。
使用说明:
本项目包含以下知识点:

  • Butter Knife:通过注解绑定 View
  • Realm在:数据库
  • RecyclerView 及 StaggeredGridLayoutManager 瀑布流布局
  • IntentService 实现的后台网络请求
  • Android Design Support Library 中的 CoordinatorLayout
  • 使用 Jsoup 解析 HTML

使用要求

  • Android 4.4 以上

开发要求

  • Gradle 2.4 (或使用内置的 ./gradlew)
  • Android Studio 1.3 RC1 以上 (canary channel)
  • Android 5.1.X (API 22) SDK Platform
  • Android Build-tools 23.0.0 rc3
  • Android Support Repository
    项目介绍及其源码下载地址:http://www.jcodecraeer.com/a/opensource/2015/0712/3176.html

澳门新浦京娱乐场网站 16

GankMeiZhi

在线云打印平台

一个在线云打印平台(android部分)含订单管理、百度地图、二维码等等
项目地址:https://github.com/LehmanHe/A4print

 可以实现查询省,市,区的准确天气预报。

 

10. Hubble Gallery

一个显示哈勃拍摄的太空照片的相册类 app,该项目使用了ObservableScrollView,road-trip 等著名的库,很适合学习。
项目介绍及其源码下载地址:http://www.codeforge.cn/article/259687

Hubble Gallery

4. 高仿jiandan

高仿煎蛋的 app,数据是采用抓包分析出煎蛋的 api,离线缓存使用GreenDao 实现本地 Sqlite 缓存。 ps : 煎蛋是一个 2b 青年聚集地。
项目介绍及其源码下载地址:http://www.codesocang.com/gn/xiangmu/33662.html

澳门新浦京娱乐场网站 17

高仿jiandan

铜板街

项目地址:https://github.com/robotlife/TongBanJie

澳门新浦京娱乐场网站 18

2.登录成功后进入到软件主体界面:

11. BiliClient

仿bilibili客户端,喜欢动漫的进。
项目介绍及其源码下载地址::http://www.jcodecraeer.com/a/opensource/2015/0527/2936.html

BiliClient

5. Wegit

一个第三方的Github客户端,采用mvp架构。
项目介绍及其源码下载地址:http://www.jcodecraeer.com/a/opensource/2015/0818/3325.html

澳门新浦京娱乐场网站 19

Wegit

礼物说

项目地址:https://github.com/Orangelittle/Liwusuo

三、键盘钩子

澳门新浦京娱乐场网站 20

12. V2EX社区客户端

支持功能:

话题查看
节点查看和按字母搜索
用户资料查看
话题回复
话题创建
未读提醒查看

其他功能:

实现了节点、话题、用户三个Scheme,通过话题、节点、用户链接直接打开客户端进行相关信息浏览
对用户已经浏览过的话题作记忆处理并在界面上进行展示
话题、帖子等采用了卡片式布局

编译需求:

JDK 1.7
Android Studio 1.0
Android SDK r21

项目介绍及其源码下载地址:http://www.jcodecraeer.com/a/opensource/2015/0523/2917.html

V2EX社区客户端

6. SimplifyReader

一款基于Google Material Design设计开发的Android客户端,包括新闻简读,图片浏览,视频爽看 ,音乐轻听以及二维码扫描五个子模块。项目采取的是MVP架构开发,由于还是摸索阶段,可能不是很规范。但基本上应该是这么个套路。
使用说明:

  • 模块分析

  • 新闻简读
    介绍:API使用的是凤凰新闻客户端的接口,我只是简单的获取了新闻的列表和详情数据,由于api和凤凰新闻客户端完全一致,鉴于侵权问题我就不开源出来了。至于接口是如何获取的?Google,百度,调试获取日志,我能说的只有这么多。
    功能:列表页使用自定义的ListView(自动加载更多)显示新闻列表,详情使用的是WebView加载,支持滑动返回。对于多图 新闻的处理,使用的和主流新闻客户端类似,滑动切换多张图片,可双指缩放图片大小!

  • 图片浏览
    介绍:API使用的是百度图片的搜索接口,由于网上有很多的开发者开源了这个接口,所以我也就放出来,如有侵权请及时告知。
    功能:列表页使用的瀑布流效果(增加了下拉刷新和上拉加载更多)详情页和列表页的切换增加了一个图片放大或缩小到指定位置的效果,图片也可以双指缩放!

  • 视频爽看
    介绍:API使用的是优酷开放平台的SDK,不过要吐槽的一点是,优酷的SDK真心不好用,还是Eclipse版本的,我是一点点移植到Android Studio平台的,但是它的接口还是很丰富的,好好的利用一下,还是能够做出一个优秀的APP的。
    功能:列表页使用了Google的CardView,简单的获取了一些视频的基本数据。播放页使用了优酷提供的视频播放器组件,传入视频ID就可以播放视频了,只要调通了SDK,其他的都是一些简单的数据获取!

  • 音乐轻听
    介绍:API获取的是豆瓣音乐的数据,由于也不是开放API,如有侵权请及时告知。
    功能:播放音乐的界面是我自定义的一个唱机的View,很多思路都是从网上学习借鉴过来的,自己重新造了个轮子。UI和网易云音乐对比的话,只能说是形似神不似了,没有人家做的细致!

  • 二维码扫描
    介绍:这个完全是我自己单独开发的类库,之前也有开源出来,这次又再一次重构优化,后期会单独剥离二维码扫描模块,做成类库和Demo的形式,提供Android Studio版本。
    功能:扫描界面使用xml进行布局,然后加入属性动画。这样布局更具有优势,更利于多屏幕适配。解码模块使用的是两个主流的开源库Zbar和ZXing,进过多次测试发现,ZBar虽然扫描效率和速度高于ZXing,但是经常扫描出错误的信息,可能由于太灵敏的缘故把,综合二者的优缺点还是建议使用ZXing来解码,并且这个项目还在长期维护更新!
    项目介绍及其源码下载地址: http://www.jcodecraeer.com/a/opensource/2015/0818/3324.html

澳门新浦京娱乐场网站 21

SimplifyReader

IotXmpp

本项目是基于XMPP的物联网客户端软件的实现,其实现的主要功能是一款能和物联网节点交互的即时通讯软件。目前支持九类传感器节点交互,主要有:温湿度、风扇、直流电机、LED灯、步进电机、门磁、光电接近、烟雾和光照。本软件不仅能和这些传感器节点交互,还实现了类似微信的订阅和取消订阅功能。当订阅一个节点后节点就会按照设定好的周期向客户端汇报数据,客户端也能设置周期、设置报警上下限等。这些功能的实现极大的方便了我们和物联网节点的交互。
项目地址:https://github.com/tiandawu/IotXmpp

实现了对键盘输入的记录,可以最小化在后台记录。

 

13. Remindly

是一个简单的用户友好的提醒应用。特点:Material 风格,可以设置重复提醒,按小时,按天 按周,按月。
项目介绍及其源码下载地址:http://www.jcodecraeer.com/a/opensource/2015/0504/2832.html

Remindly.png

7. StickerCamera

这是一款集成了相机,图片裁剪,给图片贴贴图打标签的APP。编译需要java8。
使用说明:
实现相机功能
实现对图片进行裁剪的功能
图片的滤镜功能
能为图片添加贴纸(贴纸可移动,放大,旋转)
能为图片添加标签(同样可以移动)
本地保存制作好的图片,并展示
较多的自定义控件,不错的项目架构
项目介绍及其源码下载地址:
http://www.jcodecraeer.com/a/opensource/2015/0729/3232.html

澳门新浦京娱乐场网站 22

StickerCamera

Lives

生活娱乐结合的APP, 现有主要功能: 图书 翻译 音乐 视频
项目地址:https://github.com/Allyns/Lives

澳门新浦京娱乐场网站 23

 3.第一项魔法兔子管理工具界面:

14. Launcher3

很老的项目了,更改官方的Launcher3使得可以在eclipse编译 targetSdkVersion 必须是19 (之前说的有错误) 如果修改AndroidManifest.xml后有错误,project -> clean 作者配有相关的分析文章 。
项目介绍及其源码下载地址: http://www.jcodecraeer.com/a/opensource/2015/0412/2710.html

Launcher3

8. SmsCodeHelper

是由原「贝壳单词」团队开发的一款新的开源轻App. 它可以在手机接收到验证码短信的时候,自动浮现验证码,并自动复制验证码到用户的剪切板。当用户接收到短信验证码,只要长按验证码的输入框,粘贴验证码即可。
项目介绍及其源码下载地址:http://www.jcodecraeer.com/a/opensource/2015/0624/3102.html

澳门新浦京娱乐场网站 24

SmsCodeHelper

CoCoin

一款多视图记账APP
项目地址:https://github.com/Nightonke/CoCoin

 

可以管理与查看系统的一些详细信息,比如:澳门新浦京娱乐场网站 25澳门新浦京娱乐场网站 26澳门新浦京娱乐场网站 27澳门新浦京娱乐场网站 28

15. superCleanMaster

一键清理开源版,包括内存加速,缓存清理,自启管理,软件管理等。
项目介绍及其源码下载地址: http://www.jcodecraeer.com/a/opensource/2015/0315/2604.html

superCleanMaster

9. Notes

一款基于Material Design 的开源笔记本应用,Material Design风格,采用抽屉式菜单,悬浮滑动按钮,点击控件时的水波纹效果,状态栏透明使得与应用融为一体,用户即使在Android L系统以下的手机也能感受到良好的用户体验 用文字记录身边随时发生的事情,或者你的待办事项 同步,同步需要你在手机设置里面添加一个邮箱,并作为你的同步账号,提交到服务器。
项目介绍及其源码下载地址:http://www.jcodecraeer.com/a/opensource/2015/0613/3037.html

澳门新浦京娱乐场网站 29

Notes

AppLock

AppLock应用锁,保护你的隐私
项目地址:https://github.com/lizixian18/AppLock

其他详情请见上一篇介绍。

 

16. BlackLight

是由纸飞机开发团队开发的一款Android上的新浪微博第三方轻量级客户端。没有任何商业化的因素,没有广告(新浪友情插入的除外),是一个最纯净的新浪微博客户端。
项目介绍及其源码下载地址:http://www.jcodecraeer.com/a/opensource/2015/0309/2572.html

BlackLight

10. Hubble Gallery

一个显示哈勃拍摄的太空照片的相册类 app,该项目使用了ObservableScrollView,road-trip 等著名的库,很适合学习。
项目介绍及其源码下载地址:http://www.codeforge.cn/article/259687

澳门新浦京娱乐场网站 30

Hubble Gallery

jianshi 简诗

一款优雅的中国风Android App,包括Android端和Server端,支持登录注册,数据云端同步,离线数据存储和截屏分享等功能。

因为抱着学习分享的心态,所以分享软件及源码共同学习,希望大家可以踊跃提出意见和指导,软件属于初版,还存在许多BUG和体验差的情况,后续有空会继续完成,上面展出界面基本功能都已实现。

以上为部分界面详细信息截图

17. Sky31Radio

一个开源的校园电台app,一款学院风的电台节目。可以学习,不过因为是校园的东西,服务端说不定哪天说没就没了。
项目介绍及其源码下载地址: http://www.jcodecraeer.com/a/opensource/2015/0303/2525.html

Sky31Radio

11. BiliClient

仿bilibili客户端,喜欢动漫的进。
项目介绍及其源码下载地址::http://www.jcodecraeer.com/a/opensource/2015/0527/2936.html

澳门新浦京娱乐场网站 31

BiliClient

storage-chooser

一款文件管理器app
项目地址:https://github.com/codekidX/storage-chooser

 

 

18. Material-Movies

material design风格的电影应用,这个应用的目的其实是为了讲解作者一篇文章中所描述的一种编程模式。
项目介绍及其源码下载地址: http://www.jcodecraeer.com/a/opensource/2015/0209/2447.html

Material-Movies

12. V2EX社区客户端

支持功能:

话题查看
节点查看和按字母搜索
用户资料查看
话题回复
话题创建
未读提醒查看

其他功能:

实现了节点、话题、用户三个Scheme,通过话题、节点、用户链接直接打开客户端进行相关信息浏览
对用户已经浏览过的话题作记忆处理并在界面上进行展示
话题、帖子等采用了卡片式布局

编译需求:

JDK 1.7
Android Studio 1.0
Android SDK r21

项目介绍及其源码下载地址:http://www.jcodecraeer.com/a/opensource/2015/0523/2917.html

澳门新浦京娱乐场网站 32

V2EX社区客户端

PonyExpress 小马快递

小马快递,您的好帮手。查询并跟踪快递,快递信息及时掌握。支持全国100多家快递公司,支持扫码查询,智能识别快递公司。附带生成二维码小工具,方便实用。体积小巧,无广告,无多余权限。
项目地址:https://github.com/wangchenyan/PonyExpress

 

澳门新浦京娱乐场网站 33

19. WayHoo

威震天气
本应用是以变形金刚作为主题元素的实用型Android天气软件,界面高仿雅虎天气,数据来自中国天气网!
下载apk
腾讯应用市场
百度应用市场
威震天气 Android 客户端项目简析
注:本文假设你已经有Android开发环境
①.启动Eclipse,将名为WayHoo导入作为主工程,并确保你当前的Android SDK是最新版。②.将libs目录下相应的库导入Eclipse,并作为主工程的库工程,以免缺少一些必要的资源或类。③.如果编译出错,请修改项目根目录下的 project.properties 文件。④.请使用Android 4.0 以上版本的SDK,JDK1.6编译:
target=android-19
项目介绍及其源码下载地址: http://git.oschina.net/way/WayHoo

WayHoo

13. Remindly

是一个简单的用户友好的提醒应用。特点:Material 风格,可以设置重复提醒,按小时,按天 按周,按月。
项目介绍及其源码下载地址:http://www.jcodecraeer.com/a/opensource/2015/0504/2832.html

澳门新浦京娱乐场网站 34

Remindly.png

CloudReader 云阅

一款基于网易云音乐UI,使用Gank.Io及豆瓣api开发的符合Google Material Design的Android客户端。项目采取的是MVVM-DataBinding架构开发,现主要包括:干货区、电影区和书籍区三个子模块。DIY网易云音乐原来是如此Cool
项目地址:https://github.com/youlookwhat/CloudReader

软件下载:链接:https://pan.baidu.com/s/1bc55HDQet3GTi_WecsQZvw 密码:tdcw

 

20. OpenLibra-Material

OpenLibra 的一个客户端(非官方),演示了 Material 设计在真实应用
中的使用,OpenLibra 是西班牙的一个提供免费书籍下载的网站。建议 用 studio 编译
项目介绍及其源码下载地址:
http://www.apkbus.com/forum.php?mod=viewthread&tid=255336&sortid=12

OpenLibra-Material

14. Launcher3

很老的项目了,更改官方的Launcher3使得可以在eclipse编译 targetSdkVersion 必须是19 (之前说的有错误) 如果修改AndroidManifest.xml后有错误,project -> clean 作者配有相关的分析文章 。
项目介绍及其源码下载地址: http://www.jcodecraeer.com/a/opensource/2015/0412/2710.html

澳门新浦京娱乐场网站 35

Launcher3

硅谷商城

是一款按照企业级标准研发的项目。本套代码是目前国内市场第一套详细讲解商城类项目的免费代码。该代码中的内容包括但不仅限于,框架的搭建 、主页模块、分类模块、发现模块、购物车模块和个人中心模块。项目中讲解的主流技术包括且不限于RadioGroup

  • Fragment、OKHttp、FastJson、RecyclerView、 ScrollViewContainer、Banner、倒计时秒杀、自定义购物车、支付宝等技术。该项目中讲解的技术可应用在电商、新闻、旅游、医疗、在线教育等领域。
    项目地址:https://github.com/atguigu01/Shopping

(如果链接失效,请随时联系博主更新!) 

 

21. InstaMaterial

将概念设计在程序中实现的人是伟大的,作者将 Instagram 的一组
Material 风格的概念设计转变成了现实,非常有借鉴意义。包括水波效 果 ListView 的生动初始化效果,actionbar 元素的进入效果,popmenu 的动画效果等。5 星级代码当之无愧。
项目介绍及其源码下载地址: https://github.com/frogermcs/InstaMaterial

InstaMaterial

15. superCleanMaster

一键清理开源版,包括内存加速,缓存清理,自启管理,软件管理等。
项目介绍及其源码下载地址: http://www.jcodecraeer.com/a/opensource/2015/0315/2604.html

澳门新浦京娱乐场网站 36

superCleanMaster

 

 

22. Compass

本项目是 MIUI 指南针的社区开源版,由 MIUI 团队(www.miui.com) 发起并贡献第一批代码
项目介绍及其源码下载地址: http://www.jcodecraeer.com/a/opensource/2015/0122/2339.html

Compass

16. BlackLight

是由纸飞机开发团队开发的一款Android上的新浪微博第三方轻量级客户端。没有任何商业化的因素,没有广告(新浪友情插入的除外),是一个最纯净的新浪微博客户端。
项目介绍及其源码下载地址:http://www.jcodecraeer.com/a/opensource/2015/0309/2572.html

澳门新浦京娱乐场网站 37

BlackLight

源码分享:

4.超级浏览器:

23. Omni-Notes

功能相当完善的记事本 app。包括记事分类,涂鸦、添加图片或者其他
附件,日程提醒等记事本常用功能,可以在此基础上做二次开发,但需 要遵守 gpl 协议。依赖了好几个库,又是 studio 开发的,新手编译起来 可能比较吃力。
项目介绍及其源码下载地址: http://www.jcodecraeer.com/a/opensource/2015/0102/2243.html

Omni-Notes

17. Sky31Radio

一个开源的校园电台app,一款学院风的电台节目。可以学习,不过因为是校园的东西,服务端说不定哪天说没就没了。
项目介绍及其源码下载地址: http://www.jcodecraeer.com/a/opensource/2015/0303/2525.html

澳门新浦京娱乐场网站 38

Sky31Radio

(注:如在上篇已下载的,可以联系博主,重新私发一份) 

可以同普通浏览器一样浏览网页,基本浏览器功能都可用。

24. Smart-Note

一个很简单的记事本应用,只有添加和查看功能。适合初学者学习数据 库的基本操作
项目介绍及其源码下载地址: http://www.jcodecraeer.com/a/opensource/2015/0102/2242.html

Smart-Note

18. Material-Movies

material design风格的电影应用,这个应用的目的其实是为了讲解作者一篇文章中所描述的一种编程模式。
项目介绍及其源码下载地址: http://www.jcodecraeer.com/a/opensource/2015/0209/2447.html

澳门新浦京娱乐场网站 39

Material-Movies

 

 澳门新浦京娱乐场网站 40

25. AnimeTaste(全球动画精选)

AnimeTaste(品赏艾尼莫)是国内首个关注独立动画的网站。 移动版 聚焦更新的全球独立动画的传播,让您随时随地能观看动画,分享快乐 给更多好友。品味动画,重拾幻想。 AnimeTaste For Android,为全 球动画爱好者所开发。
项目介绍及其源码下载地址:http://www.jcodecraeer.com/a/opensource/2014/1121/2031.html

AnimeTaste(全球动画精选)

19. WayHoo

威震天气
本应用是以变形金刚作为主题元素的实用型Android天气软件,界面高仿雅虎天气,数据来自中国天气网!
下载apk
腾讯应用市场
百度应用市场
威震天气 Android 客户端项目简析
注:本文假设你已经有Android开发环境
①.启动Eclipse,将名为WayHoo导入作为主工程,并确保你当前的Android SDK是最新版。②.将libs目录下相应的库导入Eclipse,并作为主工程的库工程,以免缺少一些必要的资源或类。③.如果编译出错,请修改项目根目录下的 project.properties 文件。④.请使用Android 4.0 以上版本的SDK,JDK1.6编译:
target=android-19
项目介绍及其源码下载地址: http://git.oschina.net/way/WayHoo

澳门新浦京娱乐场网站 41

WayHoo

大家可以在评论处提出指导意见!

 

26. Faceless 匿名聊天应用匿名聊天应用,包括了 android 客户端以及服务端(php)的代码

项目介绍及其源码下载地址:http://www.jcodecraeer.com/a/opensource/2014/1114/1981.html

Faceless

20. OpenLibra-Material

OpenLibra 的一个客户端(非官方),演示了 Material 设计在真实应用
中的使用,OpenLibra 是西班牙的一个提供免费书籍下载的网站。建议 用 studio 编译
项目介绍及其源码下载地址:
http://www.apkbus.com/forum.php?mod=viewthread&tid=255336&sortid=12

澳门新浦京娱乐场网站 42

OpenLibra-Material

 

5.超级网盘功能:

27. photoup 开源相册

photoup 是一款开源的相册类 app,主要功能是将本地图片提交到 facebook 上去,虽然他的功能和 facebook 的远程服务相关,但是本身 是可以被当作一款相册应用的,具有相册应用需要的绝大多数功能,可 以很流畅的浏览相册,裁剪图片,缩放图片,图片的编辑;不仅如此,还带有人脸识别这种特色功能,如果我们能够吸收其中的知识,写一个 自己的相册应用就得心应手了,因为从本地相册的角度去看,photoup 在用户体验上仍然是值得改进的,仍然值得我们去开发一款相册程序。
项目介绍及其源码下载地址:http://www.jcodecraeer.com/a/opensource/2014/1111/1956.html

photoup 开源相册

21. InstaMaterial

将概念设计在程序中实现的人是伟大的,作者将 Instagram 的一组
Material 风格的概念设计转变成了现实,非常有借鉴意义。包括水波效 果 ListView 的生动初始化效果,actionbar 元素的进入效果,popmenu 的动画效果等。5 星级代码当之无愧。
项目介绍及其源码下载地址: https://github.com/frogermcs/InstaMaterial

澳门新浦京娱乐场网站 43

InstaMaterial

此功能相当于网络云盘,可以上传及下载软件,相使用FTP进行,支持断点续传。

28. ZhihuPaper

一个「知乎日报」Android 客户端 。经过了一段时间的开发,最初的
设想已经全部完成: 最新新闻、过往的新闻的展示 下拉刷新数据 新 闻正文的展示(WebView 的各种使用) 正文中图片查看、保存至相册 离线下载 夜间模式 收藏夹 已读数据缓存 内容分享至 SNS
项目介绍及其源码下载地址:http://www.jcodecraeer.com/a/opensource/2014/1106/1919.html

ZhihuPaper

22. Compass

本项目是 MIUI 指南针的社区开源版,由 MIUI 团队(www.miui.com) 发起并贡献第一批代码
项目介绍及其源码下载地址: http://www.jcodecraeer.com/a/opensource/2015/0122/2339.html

澳门新浦京娱乐场网站 44

Compass

澳门新浦京娱乐场网站 45

29. TTAndroidClient 开源 IM

一个适用于公司内部同事交流的开源 im,该源码是由 Teamtalk 团队贡 献,同时他们开源了其他配套的源码。 因为该项目涉及到侵权已经被 git 下架。
项目介绍及其源码下载地址:http://www.jcodecraeer.com/a/opensource/2014/1104/1904.html

TTAndroidClient 开源 IM

23. Omni-Notes

功能相当完善的记事本 app。包括记事分类,涂鸦、添加图片或者其他
附件,日程提醒等记事本常用功能,可以在此基础上做二次开发,但需 要遵守 gpl 协议。依赖了好几个库,又是 studio 开发的,新手编译起来 可能比较吃力。
项目介绍及其源码下载地址: http://www.jcodecraeer.com/a/opensource/2015/0102/2243.html

澳门新浦京娱乐场网站 46

Omni-Notes

 

30. v2ex-daily:v2ex 网站的 android 客户端

v2ex 是一个创意工作者交流的社区,里面也有很多的程序员,v2ex-daily 是为 v2ex 开发的 android 客户端。可以在 google play 上下载。
项目介绍及其源码下载地址:http://www.jcodecraeer.com/a/opensource/2014/1029/1868.html

v2ex-daily-v2ex 网站的 android 客户端

24. Smart-Note

一个很简单的记事本应用,只有添加和查看功能。适合初学者学习数据 库的基本操作
项目介绍及其源码下载地址: http://www.jcodecraeer.com/a/opensource/2015/0102/2242.html

澳门新浦京娱乐场网站 47

Smart-Note

 

31. Muzei Live Wallpaper for Android Muzei 壁纸应用

这是已经在 Playstore 上线了的 android 壁纸应用,点击壁纸界面可以 磨砂透明效果以及一般背景效果之间切换,可以自己指定背景图片的来 源。最重要的他是开源的。 有一点需要注意,这个项目使用了 EventBus 库。在 Eclipse 下整个项目要编译起来还是有点困难的。不妨试试Studio。
项目介绍及其源码下载地址:http://www.jcodecraeer.com/a/opensource/2014/1024/1834.html

Muzei Live Wallpaper for Android Muzei 壁纸应用

25. AnimeTaste(全球动画精选)

AnimeTaste(品赏艾尼莫)是国内首个关注独立动画的网站。 移动版 聚焦更新的全球独立动画的传播,让您随时随地能观看动画,分享快乐 给更多好友。品味动画,重拾幻想。 AnimeTaste For Android,为全 球动画爱好者所开发。
项目介绍及其源码下载地址:http://www.jcodecraeer.com/a/opensource/2014/1121/2031.html

澳门新浦京娱乐场网站 48

AnimeTaste(全球动画精选)

因为抱着学习分享的心态,所以分享软件及源码共同学习,希望大家可以踊跃提出意见和指导,软件属于初版,还存在许多BUG和体验差的情况,后续有空会继续完成,上面展出界面基本功能都已实现。

32. MiCode/FileExplorer

小米文件管理器开源版 小米文件管理器的开源版,这是一个完整的文件管理程序,虽然界面一 般,但是功能相对完善,非常适合用来学习。
项目介绍及其源码下载地址:http://www.jcodecraeer.com/a/opensource/2014/1023/1830.html

MiCode:FileExplorer

26. Faceless 匿名聊天应用匿名聊天应用,包括了 android 客户端以及服务端(php)的代码

项目介绍及其源码下载地址:http://www.jcodecraeer.com/a/opensource/2014/1114/1981.html

澳门新浦京娱乐场网站 49

Faceless

 

33. QuickNews 新闻客户端

一个不错的新闻客户端,下载下来能用,是结合了很多开源项目制作的, 值得新手参考下,数据也是通过网易和腾讯提供的。 并提供一个 APK 下载地址 大家可以下载下来看看,个人觉得还是很不错的,很多效果 可以运用到自己的项目中去。
项目介绍及其源码下载地址:http://www.jcodecraeer.com/a/opensource/2014/1022/1822.html

QuickNews 新闻客户端

27. photoup 开源相册

photoup 是一款开源的相册类 app,主要功能是将本地图片提交到 facebook 上去,虽然他的功能和 facebook 的远程服务相关,但是本身 是可以被当作一款相册应用的,具有相册应用需要的绝大多数功能,可 以很流畅的浏览相册,裁剪图片,缩放图片,图片的编辑;不仅如此,还带有人脸识别这种特色功能,如果我们能够吸收其中的知识,写一个 自己的相册应用就得心应手了,因为从本地相册的角度去看,photoup 在用户体验上仍然是值得改进的,仍然值得我们去开发一款相册程序。
项目介绍及其源码下载地址:http://www.jcodecraeer.com/a/opensource/2014/1111/1956.html

澳门新浦京娱乐场网站 50

photoup 开源相册

软件下载:链接: 密码:tdcw**

34. SeeWeather就看天气

是一款遵循 Material Design 风格的只看天气的 APP。无流氓权限,无自启,xxx,用最少的权限做最优的体验。
项目介绍及其源码下载地址: http://www.jcodecraeer.com/a/opensource/2016/0221/3985.html

SeeWeather

28. ZhihuPaper

一个「知乎日报」Android 客户端 。经过了一段时间的开发,最初的
设想已经全部完成: 最新新闻、过往的新闻的展示 下拉刷新数据 新 闻正文的展示(WebView 的各种使用) 正文中图片查看、保存至相册 离线下载 夜间模式 收藏夹 已读数据缓存 内容分享至 SNS
项目介绍及其源码下载地址:http://www.jcodecraeer.com/a/opensource/2014/1106/1919.html

澳门新浦京娱乐场网站 51

ZhihuPaper

(如果链接失效,请随时联系博主更新!) 

35. Memo

一款基于 Google Material Design 设计开发的 Android 密码管理客户端
--怕死我的(PassWord)
项目介绍及其源码下载地址:http://www.jcodecraeer.com/a/opensource/2016/0203/3940.html

Memo

29. TTAndroidClient 开源 IM

一个适用于公司内部同事交流的开源 im,该源码是由 Teamtalk 团队贡 献,同时他们开源了其他配套的源码。 因为该项目涉及到侵权已经被 git 下架。
项目介绍及其源码下载地址:http://www.jcodecraeer.com/a/opensource/2014/1104/1904.html

澳门新浦京娱乐场网站 52

TTAndroidClient 开源 IM

 

36. React-Native-Gank

为 Gank.io 做的一个 React-Native 客户端
Update 1st
添加主要逻辑
页面数据API拼接 (拼接到1/15号,具体逻辑还没写)
单页面数据的获取
图形加载
添加主要逻辑
面向对象编程的代码重构
完成首页、历史页
完成内容详情页Header的半透明控制
添加了Navigationbar的自定义组件
项目介绍及其源码下载地址:http://www.jcodecraeer.com/a/opensource/2016/0126/3914.html

React-Native-Gank

30. v2ex-daily:v2ex 网站的 android 客户端

v2ex 是一个创意工作者交流的社区,里面也有很多的程序员,v2ex-daily 是为 v2ex 开发的 android 客户端。可以在 google play 上下载。
项目介绍及其源码下载地址:http://www.jcodecraeer.com/a/opensource/2014/1029/1868.html

澳门新浦京娱乐场网站 53

v2ex-daily-v2ex 网站的 android 客户端

源码分享:**

37. EasyGank

基于 MVP 模式 , RxJava RxAndroid Retrofit 组合的干货集中营客户端。
项目介绍及其源码下载地址:http://www.jcodecraeer.com/a/opensource/2016/0119/3885.html

EasyGank

31. Muzei Live Wallpaper for Android Muzei 壁纸应用

这是已经在 Playstore 上线了的 android 壁纸应用,点击壁纸界面可以 磨砂透明效果以及一般背景效果之间切换,可以自己指定背景图片的来 源。最重要的他是开源的。 有一点需要注意,这个项目使用了 EventBus 库。在 Eclipse 下整个项目要编译起来还是有点困难的。不妨试试Studio。
项目介绍及其源码下载地址:http://www.jcodecraeer.com/a/opensource/2014/1024/1834.html

澳门新浦京娱乐场网站 54

Muzei Live Wallpaper for Android Muzei 壁纸应用

(源码中已更改服务器密码和数据库链接密码) 

38. CoCoin

CoCoin是一款记账APP,有记账、多种方式显示支出占比和支出变化、云同步、智能提醒等功能。
项目介绍及其源码下载地址:http://www.jcodecraeer.com/a/opensource/2016/0114/3865.html

CoCoin

32. MiCode/FileExplorer

小米文件管理器开源版 小米文件管理器的开源版,这是一个完整的文件管理程序,虽然界面一 般,但是功能相对完善,非常适合用来学习。
项目介绍及其源码下载地址:http://www.jcodecraeer.com/a/opensource/2014/1023/1830.html

澳门新浦京娱乐场网站 55

MiCode:FileExplorer

 

39. SimpleNews

基于 Material Design 和 MVP 的新闻客户端。
项目介绍及其源码下载地址:http://www.jcodecraeer.com/a/opensource/2015/1227/3809.html

SimpleNews

33. QuickNews 新闻客户端

一个不错的新闻客户端,下载下来能用,是结合了很多开源项目制作的, 值得新手参考下,数据也是通过网易和腾讯提供的。 并提供一个 APK 下载地址 大家可以下载下来看看,个人觉得还是很不错的,很多效果 可以运用到自己的项目中去。
项目介绍及其源码下载地址:http://www.jcodecraeer.com/a/opensource/2014/1022/1822.html

澳门新浦京娱乐场网站 56

QuickNews 新闻客户端

小软件部分(二) :

40. JNote

一款支持部分 Markdown 语法的轻量级便签软件。
项目介绍及其源码下载地址:http://www.jcodecraeer.com/a/opensource/2015/1217/3780.html

JNote

34. SeeWeather就看天气

是一款遵循 Material Design 风格的只看天气的 APP。无流氓权限,无自启,xxx,用最少的权限做最优的体验。
项目介绍及其源码下载地址: http://www.jcodecraeer.com/a/opensource/2016/0221/3985.html

澳门新浦京娱乐场网站 57

SeeWeather

 

41. DoubanMovie-React-Native

React Native 的豆瓣电影客户端。
项目介绍及其源码下载地址:http://www.jcodecraeer.com/a/opensource/2015/1111/3676.html

DoubanMovie-React-Native

35. Memo

一款基于 Google Material Design 设计开发的 Android 密码管理客户端
--怕死我的(PassWord)
项目介绍及其源码下载地址:http://www.jcodecraeer.com/a/opensource/2016/0203/3940.html

澳门新浦京娱乐场网站 58

Memo

大家可以在评论处提出指导意见!

42. RxWeather

这是一个简单的天气预报项目,目的是用来演示如何使用 RxJava 构造
一个清晰的 Android 应用框架,并且加入了 Rxbus。
项目介绍及其源码下载地址:http://www.jcodecraeer.com/a/opensource/2015/1111/3673.html

RxWeather

36. React-Native-Gank

为 Gank.io 做的一个 React-Native 客户端
Update 1st
添加主要逻辑
页面数据API拼接 (拼接到1/15号,具体逻辑还没写)
单页面数据的获取
图形加载
添加主要逻辑
面向对象编程的代码重构
完成首页、历史页
完成内容详情页Header的半透明控制
添加了Navigationbar的自定义组件
项目介绍及其源码下载地址:http://www.jcodecraeer.com/a/opensource/2016/0126/3914.html

澳门新浦京娱乐场网站 59

React-Native-Gank

 

43. Hide-Music-Player

Hide 音乐播放器。 1.0 版主要特点 摇一摇进入播放器, 下拉展开新视
图(扫描音乐), 音乐列表放大的动画, 进入页面的圆形动画, 滑动删 除音乐, 更换主题颜色, 自定义的 SwitchButton, 播放页面的模糊背景, 带指示器的自定义 SeekBar, 通知栏显示音乐信息与关闭播放器
项目介绍及其源码下载地址:http://www.jcodecraeer.com/a/opensource/2015/1026/3626.html

Hide-Music-Player

37. EasyGank

基于 MVP 模式 , RxJava RxAndroid Retrofit 组合的干货集中营客户端。
项目介绍及其源码下载地址:http://www.jcodecraeer.com/a/opensource/2016/0119/3885.html

澳门新浦京娱乐场网站 60

EasyGank

44. GankIO

为学习使用 MVP、RxJava、Retrofit 等知识点,作者仿照 @drakeet 的妹纸, 使用 MVP 模式对项目进行重构,让视图层跟业务逻辑向分离,使代码结构更清晰。
项目介绍及其源码下载地址:http://www.jcodecraeer.com/a/opensource/2015/1117/3694.html

GankIO

38. CoCoin

CoCoin是一款记账APP,有记账、多种方式显示支出占比和支出变化、云同步、智能提醒等功能。
项目介绍及其源码下载地址:http://www.jcodecraeer.com/a/opensource/2016/0114/3865.html

澳门新浦京娱乐场网站 61

CoCoin

小软件部分,介绍及其源码下载地址。45. GithubTrends

这是一个用来看查看 Github 热门项目的 Android App, 遵循 Material
Design。 (https://github.com/trending) 支持订阅 50 多种编程语言, 你可以在设置中添加/删除它们,并自定义它们的排序。 支持 9 种颜 色主题切换,支持收藏喜欢的项目。
项目介绍及其源码下载地址:http://www.jcodecraeer.com/a/opensource/2015/1015/3583.html

GithubTrends

39. SimpleNews

基于 Material Design 和 MVP 的新闻客户端。
项目介绍及其源码下载地址:http://www.jcodecraeer.com/a/opensource/2015/1227/3809.html

澳门新浦京娱乐场网站 62

SimpleNews

46. githot

GitHot 是一款帮助你寻找 github 上最流行开源项目的 app。 功能比较
简单,就是列举了热门的项目和作者。不过里面用到了很多新技术 RxJava,Dagger,retrofit 等,作为学习材料还是不错的。
项目介绍及其源码下载地址:http://www.jcodecraeer.com/a/opensource/2015/1011/3571.html

githot

40. JNote

一款支持部分 Markdown 语法的轻量级便签软件。
项目介绍及其源码下载地址:http://www.jcodecraeer.com/a/opensource/2015/1217/3780.html

澳门新浦京娱乐场网站 63

JNote

47. Timber

Material Design 风格的音乐播放器,beta 版本。
项目介绍及其源码下载地址:http://www.jcodecraeer.com/a/opensource/2015/1004/3542.html

Timber

41. DoubanMovie-React-Native

React Native 的豆瓣电影客户端。
项目介绍及其源码下载地址:http://www.jcodecraeer.com/a/opensource/2015/1111/3676.html

澳门新浦京娱乐场网站 64

DoubanMovie-React-Native

48. AnyShareOfAndroid

file transfer on android 仿茄子快传 或者 360 文件传输 在局域网内
(如果没有接收方建立热点,发送方接入热点),进行文件(发送方的 app、图片等文件,项目中只是进行了手机中的第三方 app 和手机图片 的)的传输。
项目介绍及其源码下载地址:http://www.apkbus.com/thread-256272-1-1.html

AnyShareOfAndroid

42. RxWeather

这是一个简单的天气预报项目,目的是用来演示如何使用 RxJava 构造
一个清晰的 Android 应用框架,并且加入了 Rxbus。
项目介绍及其源码下载地址:http://www.jcodecraeer.com/a/opensource/2015/1111/3673.html

澳门新浦京娱乐场网站 65

RxWeather

49. AppPlus

App 是一个 MD 风格的用于传送、提取 APK 文件的开源工具软件。
项目介绍及其源码下载地址:http://www.jcodecraeer.com/a/opensource/2015/0928/3529.html

AppPlus

43. Hide-Music-Player

Hide 音乐播放器。 1.0 版主要特点 摇一摇进入播放器, 下拉展开新视
图(扫描音乐), 音乐列表放大的动画, 进入页面的圆形动画, 滑动删 除音乐, 更换主题颜色, 自定义的 SwitchButton, 播放页面的模糊背景, 带指示器的自定义 SeekBar, 通知栏显示音乐信息与关闭播放器
项目介绍及其源码下载地址:http://www.jcodecraeer.com/a/opensource/2015/1026/3626.html

澳门新浦京娱乐场网站 66

Hide-Music-Player

50. Conquer

基于 Material Design 的 todo 应用。 主要功能: 1.根据时间记录任务 2.
定时提醒 3.云同步功能 亮点功能:1.可与好友分享,互相监督 2.界面 简洁精美,用户易操作 3.支持丰富内容,形式多样化。
项目介绍及其源码下载地址:http://www.jcodecraeer.com/a/opensource/2015/0928/3527.html

Conquer

44. GankIO

为学习使用 MVP、RxJava、Retrofit 等知识点,作者仿照 @drakeet 的妹纸, 使用 MVP 模式对项目进行重构,让视图层跟业务逻辑向分离,使代码结构更清晰。
项目介绍及其源码下载地址:http://www.jcodecraeer.com/a/opensource/2015/1117/3694.html

澳门新浦京娱乐场网站 67

GankIO

51. ZhiHuDaily-React-Native

使用 React Native for Android 完成的知乎日报 app。
项目介绍及其源码下载地址:http://www.jcodecraeer.com/a/opensource/2015/0924/3509.html

ZhiHuDaily-React-Native

45. GithubTrends

这是一个用来看查看 Github 热门项目的 Android App, 遵循 Material
Design。 (https://github.com/trending) 支持订阅 50 多种编程语言, 你可以在设置中添加/删除它们,并自定义它们的排序。 支持 9 种颜 色主题切换,支持收藏喜欢的项目。
项目介绍及其源码下载地址:http://www.jcodecraeer.com/a/opensource/2015/1015/3583.html

澳门新浦京娱乐场网站 68

GithubTrends

52. ToolWizAppLock (密码锁)

一个密码锁应用,加密你的应用,照片,视频文件。 在生活中,你有 没有担心过手机里的某些应用被别人偷看,比如微信聊天记录、短信、 照片? 你是否担心一些重要图片,视频等重要资料被偷窥? 有了密码 锁,您只需将不想被别人查看的应用在我这里锁住,设置好密码,就可 以高枕无忧了! 您只需将重要的图片,视频等文件在我这里加密,再 也不怕被别人窃取你的隐私了!
项目介绍及其源码下载地址:http://www.jcodecraeer.com/a/opensource/2015/0923/3507.html

ToolWizAppLock

46. githot

GitHot 是一款帮助你寻找 github 上最流行开源项目的 app。 功能比较
简单,就是列举了热门的项目和作者。不过里面用到了很多新技术 RxJava,Dagger,retrofit 等,作为学习材料还是不错的。
项目介绍及其源码下载地址:http://www.jcodecraeer.com/a/opensource/2015/1011/3571.html

澳门新浦京娱乐场网站 69

githot

53. archi

演示和比较如何用不同的架构模式开发安卓 app。同样的 app 使用传统 的模式,MVP 模式,MVVM 模式开发了三次。
项目介绍及其源码下载地址:http://www.jcodecraeer.com/a/opensource/2015/0923/3504.html

archi

47. Timber

Material Design 风格的音乐播放器,beta 版本。
项目介绍及其源码下载地址:http://www.jcodecraeer.com/a/opensource/2015/1004/3542.html

澳门新浦京娱乐场网站 70

Timber

54. Clip-Stack(剪纸堆 )

剪纸堆 一个超轻量级剪贴板历史记录管理软件。
项目介绍及其源码下载地址:http://www.apkbus.com/thread-256284-1-1.html

Clip-Stack(剪纸堆 )

48. AnyShareOfAndroid

file transfer on android 仿茄子快传 或者 360 文件传输 在局域网内
(如果没有接收方建立热点,发送方接入热点),进行文件(发送方的 app、图片等文件,项目中只是进行了手机中的第三方 app 和手机图片 的)的传输。
项目介绍及其源码下载地址:http://www.apkbus.com/thread-256272-1-1.html

澳门新浦京娱乐场网站 71

AnyShareOfAndroid

55. pocket-note-android

一个简单的记事本 app,具有多色彩主题,自带日历视图,记事可以是
列表显示也可以是网格显示,提醒功能,隐私保护功能等。
项目介绍及其源码下载地址:http://www.jcodecraeer.com/a/opensource/2015/0918/3472.html

pocket-note-android

49. AppPlus

App 是一个 MD 风格的用于传送、提取 APK 文件的开源工具软件。
项目介绍及其源码下载地址:http://www.jcodecraeer.com/a/opensource/2015/0928/3529.html

澳门新浦京娱乐场网站 72

AppPlus

56. EWeightScale

一款可以记录和查询体重的应用,功能介绍如下 支持体重数据的添加、 删除、查询等功能 动态生成体重曲线图,支持手势缩放 实时计算 BMI 值,并进行诊断,给出健康体重范围
项目介绍及其源码下载地址:http://www.jcodecraeer.com/a/opensource/2015/0822/3347.html

EWeightScale

50. Conquer

基于 Material Design 的 todo 应用。 主要功能: 1.根据时间记录任务 2.
定时提醒 3.云同步功能 亮点功能:1.可与好友分享,互相监督 2.界面 简洁精美,用户易操作 3.支持丰富内容,形式多样化。
项目介绍及其源码下载地址:http://www.jcodecraeer.com/a/opensource/2015/0928/3527.html

澳门新浦京娱乐场网站 73

Conquer

51. ZhiHuDaily-React-Native

使用 React Native for Android 完成的知乎日报 app。
项目介绍及其源码下载地址:http://www.jcodecraeer.com/a/opensource/2015/0924/3509.html

澳门新浦京娱乐场网站 74

ZhiHuDaily-React-Native

52. ToolWizAppLock (密码锁)

一个密码锁应用,加密你的应用,照片,视频文件。 在生活中,你有 没有担心过手机里的某些应用被别人偷看,比如微信聊天记录、短信、 照片? 你是否担心一些重要图片,视频等重要资料被偷窥? 有了密码 锁,您只需将不想被别人查看的应用在我这里锁住,设置好密码,就可 以高枕无忧了! 您只需将重要的图片,视频等文件在我这里加密,再 也不怕被别人窃取你的隐私了!
项目介绍及其源码下载地址:http://www.jcodecraeer.com/a/opensource/2015/0923/3507.html

澳门新浦京娱乐场网站 75

ToolWizAppLock

53. archi

演示和比较如何用不同的架构模式开发安卓 app。同样的 app 使用传统 的模式,MVP 模式,MVVM 模式开发了三次。
项目介绍及其源码下载地址:http://www.jcodecraeer.com/a/opensource/2015/0923/3504.html

澳门新浦京娱乐场网站 76

archi

54. Clip-Stack(剪纸堆 )

剪纸堆 一个超轻量级剪贴板历史记录管理软件。
项目介绍及其源码下载地址:http://www.apkbus.com/thread-256284-1-1.html

澳门新浦京娱乐场网站 77

小软件部分,介绍及其源码下载地址。Clip-Stack(剪纸堆 )

55. pocket-note-android

一个简单的记事本 app,具有多色彩主题,自带日历视图,记事可以是
列表显示也可以是网格显示,提醒功能,隐私保护功能等。
项目介绍及其源码下载地址:http://www.jcodecraeer.com/a/opensource/2015/0918/3472.html

澳门新浦京娱乐场网站 78

pocket-note-android

56. EWeightScale

一款可以记录和查询体重的应用,功能介绍如下 支持体重数据的添加、 删除、查询等功能 动态生成体重曲线图,支持手势缩放 实时计算 BMI 值,并进行诊断,给出健康体重范围
项目介绍及其源码下载地址:http://www.jcodecraeer.com/a/opensource/2015/0822/3347.html

澳门新浦京娱乐场网站 79

EWeightScale

课表简单查询代码

简单的学习了有关的知识后,在学长的帮助下,我自己写了一个非常简单的课表查询代码,这也是我在夏令营中所学知识的结晶。

MainActivity.java

package com.example.gridview;
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.text.TextUtils;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Spinner;
import android.widget.TextView;
import android.widget.Toast;
import java.util.List;
public class MainActivity extends AppCompatActivity implements View.OnClickListener {
   private List<String> data_list;
   private ArrayAdapter<String> arr_adapter;
   private Spinner spinner;
   private List<String> list;
   private ArrayAdapter<String> adapter;
   private static final String TAG ="MainActivity" ;
   //学期
   private Spinner mSpisemster;
  // private EditText mEtsemster;
   //班级
   private EditText mEtclassName;
   //查询按键
   private Button mBtnLogin;
   private TextView mTvResult;
   @Override
   protected void onCreate(Bundle savedInstanceState) {
       super.onCreate(savedInstanceState);
       setContentView(R.layout.activity_main);
       spinner = (Spinner) this.findViewById(R.id.spinner1);
       ArrayAdapter adapter = new ArrayAdapter(this,
               android.R.layout.simple_spinner_item, new String[] { " ","16-17-2", "16-17-1",
               "15_16-2","15_16-1","14_15-2","14_15-1","13_14-2"
               ,"13_14-1","12_13-2","12_13-1","11_12-2","11_12-1","10_11-2","10_11-1","09_10-2","09_10-1","08_09-2","08_09-1","07_08-2"
               ,"07_08-1","06_07-2","06_07-1","05_06-2","05_06-1","04_05-2","04_05-1","03_04-2","03_04-1","02_03-2","02_03-1","01_02-2"
               ,"01_02-1" });

       //设置下拉样式
       adapter.setDropDownViewResource(android.R.layout.simple_dropdown_item_1line);
       spinner.setAdapter(adapter);
       initView();
       initListener();
   }
   /**
    * 初始化组件
    */
   private void initView() {
       mSpisemster = (Spinner) findViewById(R.id.spinner1);
      // mEtsemster = (EditText) findViewById(R.id.login_et_name);
       mEtclassName = (EditText) findViewById(R.id.login_et_pwd);
       mBtnLogin = (Button) findViewById(R.id.login_btn_login);
   }

   /**
    * 设置监听器
    */
   private void initListener() {
       mBtnLogin.setOnClickListener(this);
   }

   /*
   单击事件监听
    */
   @Override
   public void onClick(View v) {
       if(v==mBtnLogin){
           //final String Semester = mEtsemster.getText().toString().trim();

           final String Semester = mSpisemster.getSelectedItem().toString().trim();
           final String ClassName = mEtclassName.getText().toString().trim();

           if(TextUtils.isEmpty(Semester) || TextUtils.isEmpty(ClassName)){

               Toast.makeText(MainActivity.this, "学期或班级不能为空", Toast.LENGTH_SHORT).show();
               return;
           }
           Intent intent = new Intent(this, com.example.gridview.ClassActivity.class);
           //向ClassActivity传参数
           intent.putExtra("Semester", Semester);
           intent.putExtra("ClassName",ClassName);
           startActivity(intent);
       }
   }
}

BeanTable.java

package com.example.gridview;
import java.lang.reflect.Array;
import static android.R.attr.id;
/**
* Created by a302 on 2017/7/26.
*/
public class BeanTable {
   private String section;
   private String  one;
   private String  two;
   private String  three;
   private String  four;
   private String  five;
   private String  six;
   private String  seven;
   public String getSection() {
       return section;
   }
   public void setSection(String section) {
       this.section = section;
   }
   public String getOne() {
       return one;
   }
   public void setOne(String one) {
       this.one = one;
   }
   public String getTwo() {
       return two;
   }
   public void setTwo(String two) {
       this.two = two;
   }
   public String getThree() {
       return three;
   }
   public void setThree(String three) {
       this.three = three;
   }
   public String getFour() {
       return four;
   }
   public void setFour(String four) {
       this.four = four;
   }
   public String getFive() {
       return five;
   }
   public void setFive(String five) {
       this.five = five;
   }

   public String getSix() {
       return six;
   }
   public void setSix(String six) {
       this.six = six;
   }
   public String getSeven() {
       return seven;
   }
   public void setSeven(String seven) {
       this.seven = seven;
   }
}

ClassActivity.java

package com.example.gridview;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.widget.GridView;
import com.example.gridview.R;
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import okhttp3.MediaType;
import okhttp3.OkHttpClient;
import okhttp3.Request;
import okhttp3.RequestBody;
import okhttp3.Response;
public class ClassActivity extends AppCompatActivity {
   private static final String TAG ="ClassActivity" ;
   private GridView gridView;
   private String Semester;
   private String ClassName;
   private final String url ="http://192.168.3.146:8080/Educational/GetJson";
   @Override
   protected void onCreate(Bundle savedInstanceState) {
       super.onCreate(savedInstanceState);
       setContentView(R.layout.activity_class);
       //gridView = (GridView) findViewById(R.id.gridView1);
       gridView = (GridView) findViewById(R.id.gridView);
       Semester = getIntent().getStringExtra("Semester");
       ClassName = getIntent().getStringExtra("ClassName");
       login();
   }
   /*
  查询
   */
   prinate void login() {
       new Thread(new Runnable() {
           @Override
           public void run() {
               OkHttpClient client = new OkHttpClient();
               Bean bean = new Bean();
               bean.setSemester(Semester);
               bean.setClassName(ClassName);
               Gson gson = new Gson();
               String strJson = gson.toJson(bean);
               //把请求的内容字符串转换为json
               MediaType JSON = MediaType.parse("application/json; charset=utf-8");
               RequestBody body = RequestBody.create(JSON, strJson);
               Request request = new Request.Builder()
                       .url(url)
                       .post(body)
                       .build();
               Response response = null;
               try {
                   response = client.newCall(request).execute();
                   String result = response.body().string();
                   List<BeanTable> tables = gson.fromJson(result, new
                           TypeToken<List<BeanTable>>()
                   {}.getType());
                   initGridView(tables);
                   Log.e(TAG, "结果:"   result);
               } catch (IOException e) {
                   e.printStackTrace();
                   Log.e(TAG, "错误:"   e.toString());
               }
               Log.e(TAG, "semester:"   Semester);
               Log.e(TAG, "classname:"   ClassName);
           }
       }).start();
   }
   private void initGridView(final List<BeanTable> tables) {
       runOnUiThread(new Runnable() {
           @Override
           public void run() {
               List<String> strList = new ArrayList<String>();

               for (BeanTable table : tables) {
                   strList.add(table.getSection());
                   strList.add(table.getOne());
                   strList.add(table.getTwo());
                   strList.add(table.getThree());
                   strList.add(table.getFour());
                   strList.add(table.getFive());
                   strList.add(table.getSix());
                   strList.add(table.getSeven());
               }
               GridViewAdapter adapter = new GridViewAdapter(ClassActivity.this, strList);
               gridView.setAdapter(adapter);
           }
       });
   }
}

GridViewAdapter.java

package com.example.gridview;
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.TextView;
import com.example.gridview.R;
import java.util.ArrayList;
import java.util.List;
import static com.example.gridview.R.id.textView;
/**
 * Created by a302 on 2017/7/26.
 */
public class GridViewAdapter extends BaseAdapter {
    private Context mContext;
    private List<String> stringList = new ArrayList<>();
    public GridViewAdapter(Context mContext, List<String> stringList) {
        this.mContext = mContext;
        this.stringList = stringList;
    }
    @Override
    public int getCount() {
        return stringList.size();
    }
    @Override
    public Object getItem(int position) {
        return stringList.get(position);
    }
    @Override
    public long getItemId(int position) {
        return position;
    }
    @Override
    public View getView(int position, View convertView, ViewGroup parent) {
        ViewHodle hodle = null;
        if (convertView == null) {
            convertView = LayoutInflater.from(mContext).inflate(R.layout.item_gridview, null);
            hodle = new ViewHodle();
            hodle.textView = (TextView) convertView.findViewById(textView);
            convertView.setTag(hodle);
        } else {
            hodle = (ViewHodle) convertView.getTag();
        }
        hodle.textView.setText(stringList.get(position));
        return convertView;
    }
    class ViewHodle{
        private TextView textView;
    }
}

HttpUtils.java

package com.example.gridview;
import android.util.Log;
import java.io.IOException;
        import android.util.Log;
        import com.google.gson.Gson;
        import java.io.IOException;
        import okhttp3.MediaType;
        import okhttp3.OkHttpClient;
        import okhttp3.Request;
        import okhttp3.RequestBody;
        import okhttp3.Response;
        import okhttp3.ResponseBody;
        import static android.R.attr.password;
/**
 * Created by Administrator on 2016-03-27.
 */
public class HttpUtils {
    OkHttpClient client = new OkHttpClient();
    public static final MediaType JSON
            = MediaType.parse("application/json; charset=utf-8");
    public String login(String url, String json) throws IOException {
        //把请求的内容字符串转换 为json
        RequestBody body = RequestBody.create(JSON, json);
        //RequestBody formBody = new FormEncodingBuilder()
        Request request = new Request.Builder()
                .url(url)
                .post(body)
                .build();
        Response response = client.newCall(request).execute();
        String result = response.body().string();
        return result;
    }
    public String bolwingJson(Bean bean) {
        Gson gson = new Gson();
        String strJson = gson.toJson(bean);
        Log.e("strJson", strJson);
        return strJson;
    }
}

activity_class.xml

 <?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="#CFCFCF">
        <TextView
            android:layout_width="0dp"
            android:layout_height="match_parent"
            android:layout_weight="2"
            android:text=""
            android:textColor="#EE0000"/>

        <TextView
            android:layout_width="0dp"
            android:layout_height="match_parent"
            android:layout_weight="2"
            android:text="星期一"
            android:textColor="#EE0000"/>

        <TextView
            android:layout_width="0dp"
            android:layout_height="match_parent"
            android:layout_weight="2"
            android:text="星期二"
            android:textColor="#000000"/>

        <TextView
            android:layout_width="0dp"
            android:layout_height="match_parent"
            android:layout_weight="2"
            android:text="星期三"
            android:textColor="#EE0000"/>

        <TextView
            android:id="@ id/textView2"
            android:layout_width="0dp"
            android:layout_height="match_parent"
            android:layout_weight="2"
            android:text="星期四"
            android:textColor="#000000"/>

        <TextView
            android:layout_width="0dp"
            android:layout_height="match_parent"
            android:layout_weight="2"
            android:text="星期五"
            android:textColor="#EE0000"/>

        <TextView
            android:layout_width="0dp"
            android:layout_height="match_parent"
            android:layout_weight="2"
            android:text="星期六"
            android:textColor="#000000"/>

        <TextView
            android:layout_width="0dp"
            android:layout_height="match_parent"
            android:layout_weight="2"
            android:text="星期日"
            android:textColor="#EE0000"/>
    </LinearLayout>
            <GridView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:background="@drawable/bg_border"
                android:numColumns="8"
                android:verticalSpacing="80dp"/>
</LinearLayout>

activity_mian.xml

 <?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
              android:orientation="vertical"
              android:layout_width="match_parent"
              android:layout_height="match_parent">

    <TextView
        android:id="@ id/textView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textSize="10sp"
        android:textColor="#000000"

        />
</LinearLayout>

item_gridview.xml

 <?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
              android:orientation="vertical"
              android:layout_width="match_parent"
              android:layout_height="match_parent">

    <TextView
        android:id="@ id/textView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textSize="10sp"
        android:textColor="#000000"

        />
</LinearLayout>

Bean.java

 package com.example.gridview;

/**
 * Created by a302 on 2017/7/26.
 */

public class Bean {
    private String Semester;
    private String ClassName;

    public String getSemester() {
        return Semester;
    }

    public void setSemester(String semester) {
        Semester = semester;
    }

    public String getClassName() {
        return ClassName;
    }

    public void setClassName(String className) {
        ClassName = className;
    }
}

总结

  • 实验室的这段时间,我接触到也学到了很多的东西,这是我意想不到的,觉得自己对编程的理解比不进实验室的同学高了一点,也喜欢上了编程,喜欢用代码自己去创造一个独立的空间,喜欢找bug的感觉,一个bug找不出来连饭都吃得不香,有时候因为找一个bug,经常一个上午没有起过座位,虽然会很累但是我很享受这种感觉,进实验室以后对我整个人都有了很大的改变,特别是眼界有了很大的提升,都说大学生活的懒散的,最好要有一件事或一个人压着你,这样或许才会有所改变,而实验室的任务和老师正是这样一个存在,所以我才会有那么一点的进步。
  • 是在这个夏令营中老师还让我们每个人把自己所学的知识,以技术分享的形式向实验室的各个同学们分享,这是我第一次向大家讲解那么专业性的知识,既紧张又害怕,害怕自己讲得不好,然而越害怕什么就来什么,首先是紧张得代码都忘记了,然后是自己的南普让大家听得很不舒服,英语口语方面也是差强人意,以后我会多多锻炼自己口语的方面。在这个期间我也学到了团结的重要性 ,在APP开发的时候真的是缺一环都不得,后台没做好的话前端就测试不了,前端没做好的话也不能测试出后台的是否做好。所以这非常需要我们之间的交流和团结,只有多交流才能做出一个好的项目来。我也非常感谢老师和师兄师姐们的帮助,没有他们的帮助我或许都不能做出想要的结果。总而言之,言而总之,我在 实验室这段时间虽然过得累,但是我有收获,也非常的开心。

本文由澳门新浦京娱乐场网站发布于www.146.net,转载请注明出处:小软件部分,介绍及其源码下载地址