Android 单击FAB时添加视图

Android 单击FAB时添加视图,android,android-layout,Android,Android Layout,我的应用程序有一个线性布局 每当我单击浮动操作按钮(FAB)时,我希望将文本视图添加到此布局 另外,如何编辑视图的不同参数,如文本、颜色、大小等?不必这样做,只需在LinearLayout中添加一个TextView并将其可见性设置为GONE即可 在你的内心深处 textView.setVisibility(View.VISIBLE); 要保存活动状态。。。 1> 我们需要TextView和一个布尔值来存储它的值 public class MainActivity extends AppCom

我的应用程序有一个线性布局

每当我单击浮动操作按钮(FAB)时,我希望将文本视图添加到此布局


另外,如何编辑视图的不同参数,如文本、颜色、大小等?

不必这样做,只需在LinearLayout中添加一个TextView并将其可见性设置为GONE即可

在你的内心深处

textView.setVisibility(View.VISIBLE);

要保存活动状态。。。 1> 我们需要TextView和一个布尔值来存储它的值

public class MainActivity extends AppCompatActivity{

     TextView textView;    
     Boolean isTextViewVisible = true;   

     
     @Override
     protected void onCreate(Bundle savedInstanceState) {
          {...}
          textView = (TextView) findViewById(R.id.textViewID);
          {...}
     }
}
2> 隐藏/显示文本视图的步骤

{ 
    // inside any method....
    textView.setVisiblity(View.GONE);
    isTextViewVisible = false;     // because it is not visible!!!
}
3> 存储活动状态

@Override
protected void onCreate(Bundle savedInstanceState) {
    
    {...}

    textView = (TextView) findViewById(R.id.textView);

    if (savedInstanceState != null) {     // if savedInstanceState is not null...
        isTextViewVisible = savedInstanceState.getBoolean("isVisible");  
       
        // It will set value for isTextViewVisible boolean from previous state

        if (isTextViewVisible == false){

            textView.setVisibility(View.GONE);
        }
    }

    {...}
}
我们需要
onSaveInstanceState
方法,所以按Ctrl+o并搜索它,然后添加它

@Override
protected void onSaveInstanceState(Bundle outState) {
    super.onSaveInstanceState(outState);

    outState.putBoolean("isVisible", isTextViewVisible);  // storing value...
} 
4> 恢复活动状态

@Override
protected void onCreate(Bundle savedInstanceState) {
    
    {...}

    textView = (TextView) findViewById(R.id.textView);

    if (savedInstanceState != null) {     // if savedInstanceState is not null...
        isTextViewVisible = savedInstanceState.getBoolean("isVisible");  
       
        // It will set value for isTextViewVisible boolean from previous state

        if (isTextViewVisible == false){

            textView.setVisibility(View.GONE);
        }
    }

    {...}
}

要了解更多详细信息,只需在LinearLayout中添加一个TextView,并将其可见性设置为GONE即可

在你的内心深处

textView.setVisibility(View.VISIBLE);

要保存活动状态。。。 1> 我们需要TextView和一个布尔值来存储它的值

public class MainActivity extends AppCompatActivity{

     TextView textView;    
     Boolean isTextViewVisible = true;   

     
     @Override
     protected void onCreate(Bundle savedInstanceState) {
          {...}
          textView = (TextView) findViewById(R.id.textViewID);
          {...}
     }
}
2> 隐藏/显示文本视图的步骤

{ 
    // inside any method....
    textView.setVisiblity(View.GONE);
    isTextViewVisible = false;     // because it is not visible!!!
}
3> 存储活动状态

@Override
protected void onCreate(Bundle savedInstanceState) {
    
    {...}

    textView = (TextView) findViewById(R.id.textView);

    if (savedInstanceState != null) {     // if savedInstanceState is not null...
        isTextViewVisible = savedInstanceState.getBoolean("isVisible");  
       
        // It will set value for isTextViewVisible boolean from previous state

        if (isTextViewVisible == false){

            textView.setVisibility(View.GONE);
        }
    }

    {...}
}
我们需要
onSaveInstanceState
方法,所以按Ctrl+o并搜索它,然后添加它

@Override
protected void onSaveInstanceState(Bundle outState) {
    super.onSaveInstanceState(outState);

    outState.putBoolean("isVisible", isTextViewVisible);  // storing value...
} 
4> 恢复活动状态

@Override
protected void onCreate(Bundle savedInstanceState) {
    
    {...}

    textView = (TextView) findViewById(R.id.textView);

    if (savedInstanceState != null) {     // if savedInstanceState is not null...
        isTextViewVisible = savedInstanceState.getBoolean("isVisible");  
       
        // It will set value for isTextViewVisible boolean from previous state

        if (isTextViewVisible == false){

            textView.setVisibility(View.GONE);
        }
    }

    {...}
}

有关详细信息

如果要动态添加多个文本视图,请尝试以下操作:

    //you can dynamically change text size and color of this view.
    TextView textView = new TextView(this);

    //change margins according to your need.
    int marginLeft = 0 ,marginRight = 0 ,marginTop = 0 ,marginBottom = 0;
    LinearLayout.LayoutParams layoutParams = new LinearLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, WindowManager.LayoutParams.WRAP_CONTENT);
    layoutParams.setMargins(marginLeft,marginTop,marginRight,marginBottom);
    textView.setLayoutParams(layoutParams);

    yourLinearLayout.addView(textView);

希望这有帮助。

如果要动态添加多个文本视图,请尝试以下操作:

    //you can dynamically change text size and color of this view.
    TextView textView = new TextView(this);

    //change margins according to your need.
    int marginLeft = 0 ,marginRight = 0 ,marginTop = 0 ,marginBottom = 0;
    LinearLayout.LayoutParams layoutParams = new LinearLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, WindowManager.LayoutParams.WRAP_CONTENT);
    layoutParams.setMargins(marginLeft,marginTop,marginRight,marginBottom);
    textView.setLayoutParams(layoutParams);

    yourLinearLayout.addView(textView);

希望这有帮助。

谢谢,但有一件事,当我重新启动应用程序时,所有内容都再次设置为不可见。我如何使这些更改永久化,以便它们保持原样,并且在我再次运行应用程序时不会消失。不过,感谢您,当我重新启动应用程序时,所有内容都再次设置为不可见。我如何使这些更改永久化,以便它们保持原样,并且在我再次运行应用程序时不会消失。