首页 >> 数码 >

android实现微信发现界面 Android实现微信界面

2022-07-03 22:45:12 来源: 用户: 

大家好,我是云百科的客服小柏,我来为大家解答以上问题。android实现微信发现界面,Android实现微信界面很多人还不知道,现在让我们一起来看看吧!

解答:

1、 新建一个Android项目,将图片粘贴到/res/drawable-hdpi目录下;

2、 在/layout下,新建一个top.xml;采用LinearLayout(垂直););

3、 把高度改成45dp:Android:layout_height="45dp";

4、 将背景设置为title_bar:Android:background="@drawable/title_bar"

5、 设置相对于父组件的中心对齐:Android3360gravity="center"

6、 设置字体名称:android:text="微信"

7、 设置字体颜色:Android:textcolor="#ffffff"6f。

8、 设置字体大小:Android:textsize="25dp="25dp"

9、 在/layout下新建一个bottom.xml,达到如下效果;

10、 从图片中可以看出,整体布局是横向的,但是内部每个部分上面有图,下面有文字,所以每个部分都是纵向布局;

11、 在垂直布局中,先添加ImageView,再添加TextView;

12、 具体代码如下:

13、 将top.xml和bottom.xml添加到主布局;

14、 主界面效果图如下:

15、 明明是竖排线性布局,先加竖排线性布局;

16、 主界面中要包含之前创建的top.xml和bottom.xml,添加这两个布局时要选择【包含其他布局】;

17、 加了两个版面后,发现不是原来的大小。此时,修改xml文件,删除设置宽度和高度的代码。没关系。要特别注意。删除,不要注释掉,注释会给出错误。

18、 根据效果图,上面是顶,下面是底,中间是显示内容。显示内容应该是FrameLlayout。一开始,这三块内容会挤在一起。此时只需在FrameLayout中添加属性android:layout_weight="1",并设置比例即可。

19、 接口交换

20、 当我们点击下面的图标时,中间区域要显示不同的内容,所以需要做三种不同的布局来实现不同的切换;

21、 创建三个交换布局tab01.xml、tab02.xml和tab03.XML;布局不足;在这三个界面上,只需要一个TextView就可以显示不同的单词。

22、 创建这些布局文件后,必须显示它们。这些布局显示在用于叠加层的FrameLayout中。

23、 让我们创建一个新的Fragment01.java来继承这个片段。选择导入的包时注意包支持V4,重写onCreateView()方法,按照下面的代码写就可以了:

24、 记住这个固定用法就好!

25、 每个tab界面需要写一个这样的类,复制粘贴三个就可以了;

26、 写onCreateView()方法的时候,不需要代码在旁边敲,只需要写一个oncreatev,然后alt/提醒就出来了;

27、 添加事件响应

28、 要通过点击图标来切换界面,就得添加事件响应,所以主界面要实现OnClickListener接口;

29、 碎片如何切换?您可以根据以下代码加载页面:

30、 fragmentmanagerFM=getSupportFragmentManager();

31、 fragmenttransactiontransaction=FM.begintransaction();

32、 fragment01fm01=newfragment01();

33、 transaction.replace(r.id.content,fm01);

34、 transaction.commit();

35、 在替换代码中,要替换中间部分的FrameLayout,还需要先在布局中指定FrameLayout的id号;

36、 但是因为有三页,而且每页都是这样写的,所以会有一些重复的代码,所以最好把这个函数写成一个方法:同时把MainActivity改成继承FragmentActivity;

37、 在这种情况下,在onClick()中,您只需要编写:

38、 要切换界面,首先要点击对应的图标,这个图标在bottom.xml中,图标的布局是linearlayout,所以首先要获取三个图标所在的三个线性布局;

39、 您需要预先为三个linearlayout指定id号;

40、 最好记得登记监控事件。为了让点击的区域更大,最好在整个布局中加入监控事件;

41、 特别是在整个代码中,初始化组件的部分被写入一个initView()方法,但是这个方法被写入onCreate()。

42、到目前为止,我们运行代码之后,能实现界面之间的切换,但是运行之后,主界面没有任何内容;

43、正常的微信运行之后,主界面就是微信的内容,所以我们应该在MainActivity中的onCreate()方法中,添加:selectTab(0);

44、这样,运行代码之后,主界面直接是第一个图标微信的内容;selectTab()是界面切换的方法,选0是指第一个界面;

45、实现点击哪个图标,哪个图标就变亮;

46、实现原理就是,当点击这个图标时,这个图标的图片更改成点击状态的图片,简单地说就是替换图片;

47、替换图片,我们首先得获取到图片的id,所以要声明并且初始化;

48、因为是点击的时候才需要替换图片,所以我们将替换图标的代码写到切换界面的监听事件中;

49、在这里需要注意的是:

50、本步骤中,因为要使用ImageView,所以要初始化这些图片组件,初始化组件的内容写在initView()中,如图所示:

51、但是这里,我们需要将initView()方法写到selectTab(0)之前,否则会出现【已经停止工作的错误】!

52、更改位置之后,就不会出现错误了!

53、本步骤要实现的是,点击哪个图标,哪个图标就变亮了!

54、但是,当我们去点击第二个图标时,之前点击的那个图标并没有变暗;

55、实现点击第二个图标,之前点击的那个图标就变暗;

56、要使图标变暗,也就是让图标显示normal状态下的图片;所以写一个方法设置这些图标都是normal状态的;

57、写好这个方法之后,我们需要考虑,到底把这个方法放在哪里?也就是什么时候调用这个方法?

58、我们要实现的是,点击第二个图标,第一个就变暗,所以应该放在点击之后,也就是事件监听之后;

59、需要明确的是,每次点击,都会调用事件监听的方法;

60、所以放在事件监听方法onClick()方法中,当我们点击时,所以图标先全部变暗,然后点击哪个图标,哪个就调用selectTab(),而selectTab()方法中有实现让这个图标变亮的方法,所以这个图标就会变亮;

61、所以darkImage()方法的位置是:

62、运行的时候,如果出现Android模拟器变黑屏(图标的图片挡住所有屏幕),或者,当你点击第二个按钮时,第一个按钮的图标消失了,成了一个黑色的方块,那么重新运行一次代码就可以了,可能是因为图片加载时出现问题;

63、去项目的名字:

64、当我们运行代码时,会在顶部出现项目的名称,hello,影响美观,如何去掉?

本文到此讲解完毕了,希望对大家有帮助。

  免责声明:本文由用户上传,与本网站立场无关。财经信息仅供读者参考,并不构成投资建议。投资者据此操作,风险自担。 如有侵权请联系删除!

 
分享:
最新文章
站长推荐