(二)动态设置控件位置,进行节目自定义布局。——安卓智能广告机

本文将持续更新,打造一个完整的智能广告发布系统。

一.本篇要点

     如果你不知道如何在代码中动态的设置目标控件的位置,本篇也许对你有帮助。

实现的功能:

     不在xml文件中进行布局规划,在代码中进行动态布局,可实现调整目标控件大小、位置。

二.详细讲解

LinearLayout layout = (LinearLayout) advert.findViewById(R.id.ll_view_parent);

通过上述代码,首先获取布局里的相对/绝对布局控件(本文以相对布局LinearLayout为例),然后新建目标控件。

LinearLayout.LayoutParams paramsImage = new LinearLayout.LayoutParams(1080,1200);

通过LinearLayout.LayoutParams 进行目标控件大小设置,上述为1080×1200。

paramsImage.setMargins(0, 0, 0, 0);

通过setMargins方法进行目标控件相对位置的设置,(0, 0, 0, 0)依次顺序为左上右下。

使用相对布局设置多个控件位置时需要注意,通过(0, 0, 0, 0)设置的是相对位置,并不是针对全局的位置,可以通过设置不同的参数来观察效果,这样能快速掌握要点。

三.示例代码

LinearLayout layout = (LinearLayout) advert.findViewById(R.id.ll_view_parent);
//动态设置图片位置
convenientBanner = new ConvenientBanner(context);
LinearLayout.LayoutParams paramsImage = new LinearLayout.LayoutParams(1080,1200);
//左上右下
paramsImage.setMargins(0, 0, 0, 0);
layout.addView(convenientBanner,paramsImage);
//动态设置视频位置
videoView = new VideoView(context);
LinearLayout.LayoutParams paramsVideo  = new LinearLayout.LayoutParams(1080,500);
paramsVideo.setMargins(0, 0, 0, 0);
layout.addView(videoView,paramsVideo);

 

 

你可能感兴趣的:((二)动态设置控件位置,进行节目自定义布局。——安卓智能广告机)