又一个非常Nice的在线查看Android源码网站

由于我做wanandroid,所以我对工具属性的网站异常敏感。

在很久之前,我给大家推送过在线查看Android源码的一些方案:

grepcode都无法访问了,如何更好的阅读源码

这不,最近我又发现了更牛逼的在线查看源码网站。

我以前觉得在线查看源码的场景不多,其实现在来看还是挺多的:

一来主要是方便,不需要安装什么;二来很多时候我们都是找特定版本的代码看,在线查看一般都可以随意选择。

今天要重点介绍的网站为:

http://aospxref.com/

在这里插入图片描述
看到这个界面,你肯定认为这不就是:

http://androidxref.com
在这里插入图片描述
不,乍一看确实一模一样,但是你仔细体验一下,就会发现其中不同。

在线查看源码有两个非常重要的体验:

1. 首先是网站源码更新频率

可以看到androidxref至今最新还是9.0,而aospxref已经更新完毕10.0啦。

2. 访问速度

aospxref备案是在国内,而且由深圳一家公司维护,相对访问速度好了很多。

其实在操作体验上:
在这里插入图片描述
一般project我们选择frameworks,aospxref 可以看到搜索类时有明显的提示。

而androidxref是没有此功能的。

在这里插入图片描述

好了,恭喜大家又喜提一个好用的在线源码阅读站点。

现在已经加入wanandroid首页常用网站:

在这里插入图片描述
“引用”的意思,内部是支持点击类名跳转的 。

左边那个在线查看也很方便,但是并不支持点击其他类名定义进行跳转。

https://www.androidos.net.cn/sourcecode

总体而言,这两个站点已经能满足我们的日常查看需求了。

未来如果有一天,在线阅读源码网站非常不方便,wanandroid会尝试第一时间搭建一个。

导航tab的常用网站也已经更新:
在这里插入图片描述


https://www.androidos.net.cn/sourcecode

http://aospxref.com/

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
很抱歉,我是一名语言模型,没有编写代码的能力。不过我可以提供一个简单的好友列表的demo,您可以参考一下: 1. 在layout文件夹中新建一个xml文件,取名为list_item_friend.xml。代码如下: ``` <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="wrap_content" android:padding="10dp"> <ImageView android:id="@+id/avatar" android:layout_width="60dp" android:layout_height="60dp" android:src="@drawable/avatar_default" android:layout_centerVertical="true"/> <TextView android:id="@+id/name" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_toRightOf="@id/avatar" android:layout_marginLeft="10dp" android:textSize="20sp" android:layout_alignParentTop="true"/> <TextView android:id="@+id/message" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_toRightOf="@id/avatar" android:layout_marginLeft="10dp" android:textSize="14sp" android:layout_below="@id/name"/> </RelativeLayout> ``` 2. 新建一个MainActivity,并在onCreate()方法中添加以下代码: ``` public class MainActivity extends AppCompatActivity { private ListView listView; private FriendListAdapter adapter; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); listView = findViewById(R.id.friend_list); adapter = new FriendListAdapter(this, getFriendList()); listView.setAdapter(adapter); } private List<Friend> getFriendList() { List<Friend> friendList = new ArrayList<>(); friendList.add(new Friend("Alice", "Hello!")); friendList.add(new Friend("Bob", "Hi!")); friendList.add(new Friend("Carol", "How are you?")); friendList.add(new Friend("David", "Nice to meet you!")); friendList.add(new Friend("Emma", "I'm fine, thank you.")); return friendList; } } ``` 3. 新建一个Friend类,在里面定义好友的基本信息: ``` public class Friend { private String name; private String message; public Friend(String name, String message) { this.name = name; this.message = message; } public String getName() { return name; } public String getMessage() { return message; } } ``` 4. 新建一个FriendListAdapter类,继承自BaseAdapter,并在里面实现getView()方法: ``` public class FriendListAdapter extends BaseAdapter { private List<Friend> friendList; private LayoutInflater inflater; public FriendListAdapter(Context context, List<Friend> friendList) { this.friendList = friendList; inflater = LayoutInflater.from(context); } @Override public int getCount() { return friendList.size(); } @Override public Object getItem(int position) { return friendList.get(position); } @Override public long getItemId(int position) { return position; } @Override public View getView(int position, View convertView, ViewGroup parent) { ViewHolder holder = null; if (convertView == null) { convertView = inflater.inflate(R.layout.list_item_friend, parent, false); holder = new ViewHolder(); holder.avatar = convertView.findViewById(R.id.avatar); holder.name = convertView.findViewById(R.id.name); holder.message = convertView.findViewById(R.id.message); convertView.setTag(holder); } else { holder = (ViewHolder) convertView.getTag(); } holder.name.setText(friendList.get(position).getName()); holder.message.setText(friendList.get(position).getMessage()); return convertView; } class ViewHolder { ImageView avatar; TextView name; TextView message; } } ``` 5. 新建一个drawable文件夹,在里面添加一个名为avatar_default的图片,作为好友的默认头像。 6. 运行程序,就能看到一个简单的好友列表了。 希望这个demo能够对您有所帮助!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值