Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/powerbi/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 用于原始数据列的可扩展选择器_Android_View - Fatal编程技术网

Android 用于原始数据列的可扩展选择器

Android 用于原始数据列的可扩展选择器,android,view,Android,View,我需要创建一个应用程序,比如android playstore和iPhone应用程序商店中的Time Buddy exists 为此,我需要集成这个工具,它允许我同时选择所有原始列,并且它应该是可扩展的。为了更好地理解,请选择此屏幕截图 在这里,所有视图都同时滚动,这就是为什么我使用滚动并添加动态线性布局,然后在其中添加动态视图。 我更喜欢这里的代码 activity_test.xml TestActivity.java public class TestActivity extends Act

我需要创建一个应用程序,比如android playstore和iPhone应用程序商店中的Time Buddy exists

为此,我需要集成这个工具,它允许我同时选择所有原始列,并且它应该是可扩展的。为了更好地理解,请选择此屏幕截图

在这里,所有视图都同时滚动,这就是为什么我使用滚动并添加动态线性布局,然后在其中添加动态视图。 我更喜欢这里的代码

activity_test.xml TestActivity.java

public class TestActivity extends Activity {
LinearLayout llListTime;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_test);
    llListTime = (LinearLayout) findViewById(R.id.llListTime);

    for (int j = 0; j < 10; j++) {
        LinearLayout llTimeView = new LinearLayout(TestActivity.this);
        llTimeView.setLayoutParams(new LinearLayout.LayoutParams(
                LinearLayout.LayoutParams.MATCH_PARENT
                , LinearLayout.LayoutParams.WRAP_CONTENT));
        llTimeView.setOrientation(LinearLayout.HORIZONTAL);
        llListTime.addView(llTimeView, j);

        for (int i = 1; i < 24; i++) {
            View view = LayoutInflater.from(TestActivity.this).inflate(R.layout.rv_time_raw, llTimeView, false);
            TextView txtRvTime = (TextView) view.findViewById(R.id.txtRvTime);
            if (i < 12) {
                txtRvTime.setText(i + " am");
            } else if (i == 12) {
                txtRvTime.setText(i + " pm");
            } else if (i > 12) {
                txtRvTime.setText((i - 12) + " pm");
            }
            llTimeView.addView(view, i - 1);
        }
    }
    for (int i = 0; i < 10; i++) {
        LinearLayout ll = (LinearLayout) llListTime.getChildAt(i);
        for (int j = 0; j < 23; j++) {
            View vw = ll.getChildAt(j);
            final int finalI = i;
            final int finalJ = j;
            vw.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    for (int p = 0; p < 10; p++) {
                        LinearLayout pll = (LinearLayout) llListTime.getChildAt(p);
                        View pvw = pll.getChildAt(finalJ);
                        pvw.setBackgroundColor(Color.YELLOW);
                    }
                }
            });
        }
    }
  }
}
public class TestActivity extends Activity {
LinearLayout llListTime;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_test);
    llListTime = (LinearLayout) findViewById(R.id.llListTime);

    for (int j = 0; j < 10; j++) {
        LinearLayout llTimeView = new LinearLayout(TestActivity.this);
        llTimeView.setLayoutParams(new LinearLayout.LayoutParams(
                LinearLayout.LayoutParams.MATCH_PARENT
                , LinearLayout.LayoutParams.WRAP_CONTENT));
        llTimeView.setOrientation(LinearLayout.HORIZONTAL);
        llListTime.addView(llTimeView, j);

        for (int i = 1; i < 24; i++) {
            View view = LayoutInflater.from(TestActivity.this).inflate(R.layout.rv_time_raw, llTimeView, false);
            TextView txtRvTime = (TextView) view.findViewById(R.id.txtRvTime);
            if (i < 12) {
                txtRvTime.setText(i + " am");
            } else if (i == 12) {
                txtRvTime.setText(i + " pm");
            } else if (i > 12) {
                txtRvTime.setText((i - 12) + " pm");
            }
            llTimeView.addView(view, i - 1);
        }
    }
    for (int i = 0; i < 10; i++) {
        LinearLayout ll = (LinearLayout) llListTime.getChildAt(i);
        for (int j = 0; j < 23; j++) {
            View vw = ll.getChildAt(j);
            final int finalI = i;
            final int finalJ = j;
            vw.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    for (int p = 0; p < 10; p++) {
                        LinearLayout pll = (LinearLayout) llListTime.getChildAt(p);
                        View pvw = pll.getChildAt(finalJ);
                        pvw.setBackgroundColor(Color.YELLOW);
                    }
                }
            });
        }
    }
  }
}