相关疑难解决方法(0)

RelativeLayout添加规则"RelativeLayout.LEFT_OF"不起作用

我有一个relativeLayout如下:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="horizontal"
    android:id="@+id/parent" >

    <ListView 
        android:layout_width="360dp"
        android:layout_height="600dp"
        android:id="@+id/list"
        android:inputType="text"
        android:maxLines="1"
        android:layout_margin="50dp"
        android:layout_alignParentRight="true"
        />
</RelativeLayout>
Run Code Online (Sandbox Code Playgroud)

在java代码中,我想在listview的左侧添加一个视图,但它没有用:

m_relativeLayout = (RelativeLayout)findViewById(R.id.parent);
RelativeLayout.LayoutParams layoutParams = new RelativeLayout.LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT);
layoutParams.addRule(RelativeLayout.LEFT_OF, m_listView.getId());
Button button2 = new Button(this);
button2.setText("I am button 2");
m_relativeLayout.addView(button2, layoutParams);
Run Code Online (Sandbox Code Playgroud)

只有当我将listview设置为alignParentRight时,它才会起作用.这是一个机器人的bug还是我错过了什么?

我总是尝试addView(View child, int index, LayoutParams params),但它可能只适用于线性布局.那么有一个正常的解决方案来完成RelativeLayout.LEFT_OF工作吗?

编辑

我曾尝试RelativeLayout.BELOWRelativeLayout.RIGHT_OF,他们的工作完美,所以这意味着我没有足够的地方,以获得该按钮?我试图给予更多空间,但它仍然不起作用.

我使用东芝AT100(1280*800)和风景,所以空间足够.测试below和和.right一样left.我想如果我把一个控制器A放在relativelayout中,那么我在控制器A的左边添加控件B和decalare,结果应该是控件B将控件A推到右边,对吗?

android android-layout android-relativelayout

15
推荐指数
1
解决办法
4万
查看次数

在弹出的对话框中获取用户字符串

在我的Android代码中,我给GUI充气并将所有子元素存储在不同的类中.在该类中,我想添加一个方法来读取用户输入.我尝试按照这个链接中的内容进行操作,但无论我做什么,它都归结为将最终值复制到非最终值.我虽然想创造另一个gui但是无法用这种方式来制作.这是我现在的方法:

private String setText(int id){
        AlertDialog.Builder alert = new AlertDialog.Builder(this.show);
        final EditText input = new EditText(this.show);
        alert.setView(input);
        String out;
        alert.setPositiveButton("OK", new DialogInterface.OnClickListener() {
            //@Override
            public void onClick(DialogInterface dialog, int which) {
                Editable value = input.getText();
                out = value.toString();
                // TODO Auto-generated method stub

            }
        });

    }
}
Run Code Online (Sandbox Code Playgroud)

我用它来将一个字符串返回到另一个设置值的方法TextView.


我试着做以下几招:

private String setText(){

    AlertDialog.Builder alert = new AlertDialog.Builder(this.show);
    final EditText input = new EditText(this.show);
    alert.setView(input);
    String out;
    alert.setNegativeButton("Cancel", new DialogInterface.OnClickListener() {

        @Override
        public void onClick(DialogInterface dialog, int …
Run Code Online (Sandbox Code Playgroud)

android android-layout

3
推荐指数
1
解决办法
1万
查看次数