效果图

ContactActivity.java

package com.example.qq;import androidx.annotation.NonNull;
import androidx.appcompat.app.AppCompatActivity;
import androidx.fragment.app.FragmentManager;
import androidx.fragment.app.FragmentTransaction;import android.content.Intent;
import android.os.Bundle;
import android.view.Display;
import android.view.MenuItem;
import android.view.View;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.TextView;import com.google.android.material.bottomnavigation.BottomNavigationView;public class ContactActivity extends AppCompatActivity {private BottomNavigationView navigationView;private ImageView img1,img2;private boolean Display;private LinearLayout llFriends;private TextView Time;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_contact);initView();Display=true;navigationView.setSelectedItemId(R.id.contact);navigationView.setOnNavigationItemSelectedListener(new BottomNavigationView.OnNavigationItemSelectedListener() {@Overridepublic boolean onNavigationItemSelected(@NonNull MenuItem item) {switch (item.getItemId()) {case R.id.message:startActivity(new Intent(getApplicationContext(),MessageActivity.class));overridePendingTransition(0,0);return true;case R.id.contact:return true;case R.id.dynamics:startActivity(new Intent(getApplicationContext(),DynamicsActivity.class));overridePendingTransition(0,0);return true;}return false;}});}private void initView() {img2=findViewById(R.id.img_2);img1=findViewById(R.id.img_1);llFriends=findViewById(R.id.ll_friendlist);navigationView=findViewById(R.id.navigation_bottom);}
//点击我的好友显示内容public void display_friends(View view) {if(Display==true){img1.setVisibility(View.INVISIBLE);img2.setImageResource(R.drawable.jt_bottoms);img2.setVisibility(View.VISIBLE);llFriends.setVisibility(View.VISIBLE);ContactFragment contactFragment=new ContactFragment();FragmentManager supportFragmentManager=getSupportFragmentManager();FragmentTransaction fragmentTransaction=supportFragmentManager.beginTransaction();fragmentTransaction.replace(R.id.message_fl,contactFragment);fragmentTransaction.commit();Display=false;}else{img2.setVisibility(View.INVISIBLE);img1.setVisibility(View.VISIBLE);llFriends.setVisibility(View.INVISIBLE);Display=true;}}
}

ContactData.java

package com.example.qq;public class ContactData {private final String[] titles={"勿忘我","花开富贵","四季平安","微笑","幸福人生","平安快乐","知足常乐","苦中百合花","精彩人生"};private final String[] prices={"[5G在线]","[4G在线]","[WiFi在线]" ,"[5G在线]","[4G在线]","[携手抗疫]","[iPhone在线]","[手机在线]","[电脑在线]","[4G在线]"};private final int[] imgs={R.drawable.img_12,R.drawable.img_11,R.drawable.img_13,R.drawable.img_14,R.drawable.img_15,R.drawable.img_16,R.drawable.img_17,R.drawable.img_18,R.drawable.img_19};public String[] getTitles() {return titles;}public String[] getPrices() {return prices;}public int[] getImgs() {return imgs;}
}

ContactFragment.java

package com.example.qq;import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.AdapterView;
import android.widget.BaseAdapter;
import android.widget.ImageView;
import android.widget.ListAdapter;
import android.widget.ListView;
import android.widget.TextView;import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.appcompat.view.menu.MenuAdapter;
import androidx.fragment.app.Fragment;import java.util.Objects;public class ContactFragment extends Fragment {private ListView messageLv;private View view;private ContactData contactData;private ListView LV;private LayoutInflater inflaterGetView;@Nullable@Overridepublic View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {view=inflater.inflate(R.layout.message_list,container,false);if(view!=null){initView();}contactData=new ContactData();inflaterGetView = getLayoutInflater();LV.setAdapter(new MyBaseAdapter());return view;}class MyBaseAdapter extends BaseAdapter {@Overridepublic int getCount() {return contactData.getTitles().length;}@Overridepublic Object getItem(int i) {return contactData.getPrices()[i];}@Overridepublic long getItemId(int i) {return i;}@Overridepublic View getView(int i, View views, ViewGroup viewGroup) {ViewHolder holder;if(views==null){views=inflaterGetView.inflate(R.layout.item_layout_c,null);holder=new ViewHolder();holder.title=views.findViewById(R.id.message_tv_title);holder.price=views.findViewById(R.id.message_tv_content);holder.iv=views.findViewById(R.id.message_img);views.setTag(holder);}else{holder= (ViewHolder) views.getTag();}holder.title.setText(contactData.getTitles()[i]);holder.price.setText(contactData.getPrices()[i]);holder.iv.setBackgroundResource(contactData.getImgs()[i]);return views;}}private void initView() {LV=view.findViewById(R.id.message_lv);}class ViewHolder {TextView title;TextView price;ImageView iv;}
}

activity_contact.xml

<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:app="http://schemas.android.com/apk/res-auto"xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent"tools:context=".ContactActivity"><com.google.android.material.bottomnavigation.BottomNavigationViewandroid:id="@+id/navigation_bottom"android:layout_width="match_parent"android:layout_height="wrap_content"android:background="#F3F3F3"app:itemIconTint="@drawable/ic_home"app:itemTextColor="@drawable/ic_home"app:layout_constraintBottom_toBottomOf="parent"app:menu="@menu/navigation"/><androidx.constraintlayout.widget.Guidelineandroid:id="@+id/g1"android:layout_width="wrap_content"android:layout_height="wrap_content"android:orientation="horizontal"app:layout_constraintGuide_percent="0.07"/><androidx.constraintlayout.widget.Guidelineandroid:id="@+id/g2"android:layout_width="wrap_content"android:layout_height="wrap_content"android:orientation="vertical"app:layout_constraintGuide_percent="0.07"/><androidx.constraintlayout.widget.Guidelineandroid:id="@+id/g3"android:layout_width="wrap_content"android:layout_height="wrap_content"android:orientation="vertical"app:layout_constraintGuide_percent="0.93"/><LinearLayoutandroid:id="@+id/ll_top"android:layout_width="match_parent"android:layout_height="wrap_content"android:orientation="horizontal"android:layout_marginTop="10dp"app:layout_constraintTop_toTopOf="@id/g1"android:padding="10dp"><TextViewandroid:layout_width="0dp"android:layout_height="wrap_content"android:text="新朋友"android:layout_weight="9"android:textColor="@color/black"android:textSize="18sp"android:textStyle="bold"/><ImageViewandroid:layout_width="17dp"android:layout_height="16dp"android:layout_gravity="center"android:background="@drawable/jt_right" /></LinearLayout><LinearLayoutandroid:id="@+id/ll_tops"android:layout_width="match_parent"android:layout_height="wrap_content"android:orientation="horizontal"android:layout_marginTop="10dp"app:layout_constraintTop_toBottomOf="@id/ll_top"android:padding="10dp"><TextViewandroid:layout_width="0dp"android:layout_height="wrap_content"android:text="群通知"android:layout_weight="9"android:textColor="@color/black"android:textSize="18sp"android:textStyle="bold"/><ImageViewandroid:layout_width="17dp"android:layout_height="16dp"android:layout_gravity="center"android:background="@drawable/jt_right"/></LinearLayout><LinearLayoutandroid:layout_width="match_parent"android:layout_height="wrap_content"android:background="@drawable/underline"app:layout_constraintTop_toBottomOf="@id/ll_tops"/><LinearLayoutandroid:id="@+id/ll_bot"android:layout_width="match_parent"android:layout_height="wrap_content"android:orientation="horizontal"android:layout_marginTop="15dp"app:layout_constraintTop_toBottomOf="@id/ll_tops"android:padding="10dp"><ImageViewandroid:layout_width="17dp"android:layout_height="16dp"android:layout_gravity="center"android:background="@drawable/jt_rights"/><TextViewandroid:layout_width="0dp"android:layout_height="wrap_content"android:text="特别关心"android:layout_weight="9"android:textColor="@color/black"android:textSize="18sp"android:textStyle="bold"/><TextViewandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:text="0/0"android:textSize="14sp"/></LinearLayout><LinearLayoutandroid:id="@+id/ll_bots"android:layout_width="match_parent"android:layout_height="wrap_content"android:orientation="horizontal"android:onClick="display_friends"android:layout_marginTop="8dp"app:layout_constraintTop_toBottomOf="@id/ll_bot"android:padding="10dp"><ImageViewandroid:id="@+id/img_1"android:layout_width="17dp"android:layout_height="16dp"android:layout_gravity="center"android:background="@drawable/jt_rights"/><ImageViewandroid:id="@+id/img_2"android:layout_width="17dp"android:layout_height="16dp"android:layout_gravity="center"android:layout_marginLeft="-18dp"/><TextViewandroid:layout_width="0dp"android:layout_height="wrap_content"android:text="我的好友"android:layout_weight="9"android:textColor="@color/black"android:textSize="18sp"android:textStyle="bold"/><TextViewandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:text="9/9"android:textSize="14sp"/></LinearLayout><LinearLayoutandroid:id="@+id/ll_friendlist"android:layout_width="match_parent"android:layout_height="0dp"android:orientation="vertical"app:layout_constraintTop_toBottomOf="@id/ll_bots"app:layout_constraintBottom_toTopOf="@id/navigation_bottom"app:layout_constraintLeft_toLeftOf="parent"android:visibility="visible"><FrameLayoutandroid:id="@+id/message_fl"android:layout_width="match_parent"android:layout_height="match_parent"/></LinearLayout><EditTextandroid:id="@+id/message_search"android:layout_width="350dp"android:layout_height="30dp"android:hint="搜索"android:textSize="16sp"android:gravity="center"android:background="@drawable/ed_style_message"android:layout_marginBottom="6dp"app:layout_constraintBottom_toBottomOf="@id/g1"app:layout_constraintLeft_toLeftOf="@id/g2"app:layout_constraintRight_toRightOf="@id/g3"/>
</androidx.constraintlayout.widget.ConstraintLayout>

Android安卓开发源码(联系人页)相关推荐

  1. 《Android开发源码精编解析》最新PDF版开源,安卓工程师进阶实战

    对于程序员而言,提高源码的阅读与理解能力是提升自我技术水平和编程功力的捷径. 阅读优秀的Android源码.熟悉源码框架对我们日常的开发工作有诸多好处: 有助于我们学习其中的设计模式.思想.架构: 有 ...

  2. 《飞机大战》安卓游戏开发源码(三)

    为什么80%的码农都做不了架构师?>>>    本文章属于原创性文章,珍惜他人劳动成果,转载请注明出处:http://www.pm-road.com/index.php/2014/1 ...

  3. 优秀Android开发源码合集(附解析)程序员进阶宝典

    源码就像乐高积木,如果你想了解它们是怎么组装在一起的,你需要和它交互,有时甚至要把它拆开. 阅读源码的过程对于Android开发者大有裨益, 优秀的源码都极具营养,不仅蕴含大神的思维模式,还有很多值得 ...

  4. Android便签开发源码

    Android 便签开发源码 首先我们来看一下app截图: 因为代码比较多,这里我把主要的代码贴出来, 源码链接:https://download.csdn.net/download/qq_40748 ...

  5. 微信weixin小程序开发源码资源学习教程汇总

    微信weixin小程序开发源码资源学习教程汇总 目录 官方文档 工具 插件 教程 视频教程 文章 组件 Demo 置顶 WePY:组件化的小程序开发框架 ? WePY 开发资源汇总 ? 官方文档 小程 ...

  6. 生鲜配送小程序源码_生鲜果蔬配送小程序开发源码

    生鲜蔬菜配送系统开发(谭可)生鲜蔬菜配送系统软件开发,生鲜蔬菜配送模式开发,生鲜蔬菜配送app开发,生鲜蔬菜配送系统平台开发,生鲜蔬菜配送app开发,生鲜蔬菜配送分销系统开发. 搭建一个生鲜蔬菜配送系 ...

  7. 传美云商系统开发源码

    以前的许知远是经书评写作者,是一个作家,也是一家书店的老板.与其说是马东们造就了他的爆红,不如说是他因为做<十三邀>而不得不拥抱互联网,进而被互联网所改变.而互联网所改变的,远不止2017 ...

  8. C语言学习教程:搬山游戏开发源码

    C语言学习教程:搬山游戏开发源码 #include<stdio.h> void main() {int n,k,x,y,cc,pc,g;clrscr();puts("****** ...

  9. 畜牧养殖APP系统开发源码

    畜牧养殖APP开发,畜牧养殖APP开发源码,畜牧养殖系统开发. 1.行业资讯展现:在畜牧养殖APP主页,会为用户展现各种行业资讯,有兴趣的用户可以自主查询相关内容,便捷用户深入了解行业信息内容和服务平 ...

最新文章

  1. python 打印数组变量_使用Python将数组的元素导出到变量中(unpacking)
  2. 神策数据、阿里、华为、字节等携手推动个人信息保护工作
  3. [python Cookbook]阅读笔记
  4. ubuntu安装有道云笔记_Ubuntu 安装Node 10.16 跑 Nodeppt 加Hexo博客再来个为知笔记私有云...
  5. 如何查看 JSP 和 Servlet 的版本
  6. 活跃用户数怎么计算_【数据运营】|如何做好活跃用户的运营?
  7. 字符串转命令行字符图片
  8. 不错的学习博客,有时间看看
  9. ERPS协议学习笔记
  10. 记录:mysql 字符串拼接函数
  11. WinRAR激活去除广告
  12. 2013年4月小游戏行业网站综合影响力排名
  13. ubuntu18基本软件安装
  14. 员工股权激励方案设计
  15. android package_added 界面更新,如何在Android Oreo上注册ACTION_PACKAGE_ADDED和ACTION_PACKAGE_REMOVED?...
  16. Scrm营销如何自动化打标签
  17. 直播回顾|论道原生:云原生时代的中间件
  18. 关于编码问题的复制黏贴
  19. 音视频技术开发周刊 | 247
  20. Flask框架二 Jinja2

热门文章

  1. mybatis注解开发使用foreach
  2. 【Python】请编码实现动物世界的继承关系:动物(Animal)具有行为:吃(eat)、睡觉(sleep)动物包括:兔子(Rabbit),老虎(Tiger)动物吃的行为各不相同(兔子吃草,老虎吃肉)
  3. Speech and Language Processing-导读
  4. 切换电脑上登录的Git账号
  5. Android Studio使用Git提交、分支、切换,Android移动应用开发案例
  6. Git 分支工作策略
  7. 修改文件后缀的C语言实现
  8. 算法:小蓝在一个n行 m列的方格图中玩一个游戏
  9. 《无人驾驶车辆模型预测控制》(第二版)第四章详细学习——算法部分
  10. 1.利用C++继承实现水陆两用车辆系统