我想要做的是在按下按钮时在"2"(第二个LinearLayout)的顶部显示"框架"(或新布局).我该怎么办?如果没有按下按钮,预先创建并隐藏它?
我有这种类型的布局:

XML:
<LinearLayout>
<LinearLayout>
</LinearLayout>
<LinearLayout>
//here would be another view, only shown when a button is clicked
<ViewFlipper>
</ViewFlipper>
</LinearLayout>
<RelativeLayout
</RelativeLayout>
</LinearLayout>
Run Code Online (Sandbox Code Playgroud) 我想在左边有一个填充空间的TextView,右边有一个右对齐的TextView.我已尝试摆弄引力,layout_gravity,并制作第二个TextView fill_parent,但第二个TextView总是不可见,只要第一个是fill_parent.我注意到如果LinearLayout是垂直的,会出现同样的问题.该怎么办?
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="fill_horizontal"
android:orientation="horizontal" >
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Left Side"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Right side"
android:background="#ff606060"/>
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)
目标:Android 2.2
使用了admob站点中提供的代码
这是我的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:background="@drawable/background_img"
android:orientation="vertical"
android:id="@+id/atozlayout"
>
<GridView
android:id="@+id/gridView1"
android:numColumns="auto_fit"
android:gravity="center"
android:columnWidth="55dp"
android:stretchMode="columnWidth"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:horizontalSpacing="10dp"
android:verticalSpacing="10dp"
>
</GridView>
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)
但是logcat显示了E/Ads(4244):没有足够的空间来展示广告!想要:<480,75>,有:<800,0>
似乎布局正在创建问题.请提出修复方法.非常感谢.
我有一个FrameLayout,它上面显示了一个LinearLayout我的意图是这个LinearLayout总是达到屏幕的33%...但我不能这样做.我尝试使用"dp",但当然,结果根据密度不同.如果他们是两个LinearLayout,如果我可以使用layout_weight =".33"和layout_weight =".67"但是FrameLayout在其中一个中使用.
我希望能够妥善解释

提前致谢
问候
我想在LinearLayout中添加第二个广告横幅,但是插入第二个横幅时我的应用程序崩溃。将外部横幅插入RelativeLayout效果很好,但是我想在ScrollView内添加第二个。我该怎么办?这是我的代码:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
xmlns:ads="http://schemas.android.com/apk/lib/com.google.ads"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="#000000" >
<ScrollView
android:id="@+id/scrollView1"
android:layout_width="fill_parent"
android:layout_height="wrap_content" >
<LinearLayout
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<TextView
/>
<ToggleButton
/>
<com.google.ads.AdView
android:id="@+id/adView"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
ads:adSize="BANNER"
ads:adUnitId="xxxxxxxx"
ads:loadAdOnCreate="true"
>
</com.google.ads.AdView>
</LinearLayout>
</ScrollView>
<com.google.ads.AdView
android:id="@+id/adView"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
ads:adSize="BANNER"
ads:adUnitId="xxxxxxxxx"
ads:loadAdOnCreate="true"
>
</com.google.ads.AdView>
</RelativeLayout>
Run Code Online (Sandbox Code Playgroud) 我有一个LinearLayout可以有很多孩子观点.以编程方式添加子视图.
i need this distance
<---------------------->
--------------------------------wrapper ln----------------------------------
- ... cv4 cv3 cv2 cv1 -
----------------------------------------------------------------------------
Run Code Online (Sandbox Code Playgroud)
Wrapper ln gravity设置为右侧,因此每个添加的子视图都正确.
例如,当我点击"cv4"时,我需要从包装线性布局的右侧获得距离.
子视图属于LinearLayout类型.
FrameLayout frameLayout = new FrameLayout(this);
LinearLayout linearLayout1= new LinearLayout(this);
LinearLayout linearLayout2= new LinearLayout(this);
FrameLayout.LayoutParams params = new FrameLayout.LayoutParams(
LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
params.gravity = Gravity.CENTER_VERTICAL;
frameLayout.addView(linearLayout1, params);
Run Code Online (Sandbox Code Playgroud)
如何在linearLayout1下添加linearLayout2

我想禁用图片中显示的滚动视图中的所有字段.我尝试使用下面的代码,但代码只禁用线性布局的直接子项,并且不禁用嵌套线性布局的子项.如何禁用所有子项,包括嵌套布局的子项?
LinearLayout myLayout
= (LinearLayout)v.findViewById(R.id.addEditSection1);
for (int i = 0; i < myLayout.getChildCount(); i++) {
View view = myLayout.getChildAt(i);
view.setEnabled(false);
}
Run Code Online (Sandbox Code Playgroud) 我使用此代码将我的布局划分为2个滚动视图
<?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" >
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="0px"
android:background="@drawable/ashokb"
android:layout_weight="4" >
<ScrollView
android:id="@+id/scrollView1"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:background="@drawable/flagc">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:layout_gravity="center">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:gravity="center"
android:orientation="horizontal" >
<TextView
android:id="@+id/textView1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:gravity="center"
android:text="Large Text"
android:textAppearance="?android:attr/textAppearanceLarge"
android:textColor="#000000" />
<Button
android:id="@+id/button1"
android:layout_width="50dp"
android:layout_height="50dp"
android:layout_marginLeft="-50dp"
android:background="@drawable/ic_menu_share" />
</LinearLayout>
<TextView
android:id="@+id/textView5"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Medium Text"
android:textColor="#000000"
android:gravity="center"
android:textAppearance="?android:attr/textAppearanceMedium" />
</LinearLayout>
</ScrollView>
</RelativeLayout>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="0px"
android:background="@drawable/ashokb"
android:layout_weight="1" >
<ScrollView
android:id="@+id/scrollView2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true" > …Run Code Online (Sandbox Code Playgroud) android textview android-layout android-linearlayout android-scrollview
我正在尝试在android studio中实现导航抽屉。我发现的所有示例似乎都在使用ListView,我更喜欢linearLayout。
我遇到的问题是,当我调用isDrawerOpen时,我的应用程序崩溃并显示为“找不到重力向左的抽屉视图”。
我整天都在Stack和Google上进行搜索,但找不到任何有效的方法。我试过了:
navDrawerLayout.isDrawerOpen(Gravity.LEFT)
navDrawerLayout.isDrawerOpen(Gravity.RIGHT)
navDrawerLayout.isDrawerOpen(GravityCompat.START)
navDrawerLayout.isDrawerOpen(GravityCompat.END)
navDrawerLayout.isDrawerOpen(navLinearLayout)
android:gravity="left"
android:gravity="start"
android:gravity="left|start"
android:gravity="start|left"
android:gravity="right"
android:gravity="end"
android:gravity="right|end"
android:gravity="end|right"
Run Code Online (Sandbox Code Playgroud)
以上所有组合,但似乎无济于事。我还能做错什么导致这次崩溃?
MainActivity.java
import android.content.res.Configuration;
import android.os.Bundle;
import android.support.v4.view.GravityCompat;
import android.support.v4.widget.DrawerLayout;
import android.support.v7.app.ActionBarActivity;
import android.support.v7.app.ActionBarDrawerToggle;
import android.support.v7.widget.Toolbar;
import android.view.Gravity;
import android.view.MenuItem;
import android.view.View;
import android.widget.LinearLayout;
public class MainActivity extends ActionBarActivity {
private Toolbar toolbar;
private DrawerLayout navDrawerLayout;
private ActionBarDrawerToggle actionBarDrawerToggle;
private LinearLayout navLinearLayout;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
loadToolbar();
loadNavigationDrawer();
}
private void loadNavigationDrawer() {
navDrawerLayout = (DrawerLayout) findViewById(R.id.nav_drawer_layout);
navLinearLayout = …Run Code Online (Sandbox Code Playgroud)