我以编程方式创建TextView,如下所示:
TextView mTextView = new TextView(getApplicationContext());
final LayoutParams params = new TableLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
((MarginLayoutParams) params).setMargins(8, 8, 0, 0);
mTextView.setText(mText);
mTextView.setLayoutParams(params);
mTextView.setPadding(2, 2, 2, 2);
mTextView.setBackground(getResources().getDrawable(R.drawable.note_corps));
tagMap.addView(mTextView);
textViewsWidth = mTextView.getWidth();
Run Code Online (Sandbox Code Playgroud)
但是mTextView.getWidth()始终返回0
如果我尝试:
mTextView.getLayoutParams().width
Run Code Online (Sandbox Code Playgroud)
它返回LayoutParams类中的LayoutParams对应值(-1或-2)
如何获得视图的宽度?
编辑我需要在这里这样做:
@Override
public void onPostExecute(Hashtable<String, Integer> hash){
final ScrollView tagMapScroll = (ScrollView) findViewById(R.id.tagMapScroll);
final LinearLayout tagMap = (LinearLayout) findViewById(R.id.tagMap);
final ArrayList<Integer> arr = new ArrayList<Integer>(hash.values());
final Enumeration<String> e = hash.keys();
int index = 0;
int textViewsWidth = 0;
while(e.hasMoreElements()){
final TextView tV = new TextView(getApplicationContext()); …Run Code Online (Sandbox Code Playgroud) 我尝试录制音频,只录制音频,我在Android 4.1.2上得到此错误,但在4.3上没有:
这是代码:
private void startRecord(){
on_record = true;
final boolean exists = (new File(Environment.getExternalStorageDirectory() + File.separator + NOTAY)).exists();
if (!exists) {new File(Environment.getExternalStorageDirectory() + File.separator + "Test").mkdirs();}
final boolean existAud = (new File(android.os.Environment.getExternalStorageDirectory() + File.separator + NOTAY + File.separator + "Audio")).exists();
if (!existAud) {new File(Environment.getExternalStorageDirectory() + File.separator + "Test" + File.separator + "Audio").mkdirs();}
final EditText editTitle= (EditText) findViewById(R.id.editTitle);
final String title = editTitle.getText().toString();
final String audioName = getDate(System.currentTimeMillis()).replaceAll(" ", "_");
currentAudioPath = Environment.getExternalStorageDirectory().getAbsolutePath()
+ File.separator
+ "Test"
+ File.separator
+ …Run Code Online (Sandbox Code Playgroud)